Skip to content

Commit 0ef728a

Browse files
committed
PYTHON-1674 Add retryable reads spec test files
1 parent 87951c3 commit 0ef728a

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+18200
-0
lines changed

test/retryable_reads/aggregate-serverErrors.json

Lines changed: 1207 additions & 0 deletions
Large diffs are not rendered by default.

test/retryable_reads/aggregate.json

Lines changed: 405 additions & 0 deletions
Large diffs are not rendered by default.

test/retryable_reads/changeStreams-client.watch-serverErrors.json

Lines changed: 763 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 213 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,213 @@
1+
{
2+
"runOn": [
3+
{
4+
"minServerVersion": "4.0",
5+
"topology": [
6+
"replicaset"
7+
]
8+
},
9+
{
10+
"minServerVersion": "4.1.7",
11+
"topology": [
12+
"sharded"
13+
]
14+
}
15+
],
16+
"database_name": "retryable-reads-tests",
17+
"collection_name": "coll",
18+
"data": [
19+
{
20+
"_id": 1,
21+
"x": 11
22+
}
23+
],
24+
"tests": [
25+
{
26+
"description": "client.watch succeeds on first attempt",
27+
"operations": [
28+
{
29+
"name": "watch",
30+
"object": "client"
31+
}
32+
],
33+
"expectations": [
34+
{
35+
"command_started_event": {
36+
"command": {
37+
"aggregate": 1,
38+
"cursor": {},
39+
"pipeline": [
40+
{
41+
"$changeStream": {
42+
"fullDocument": "default",
43+
"allChangesForCluster": true
44+
}
45+
}
46+
]
47+
},
48+
"database_name": "admin"
49+
}
50+
}
51+
]
52+
},
53+
{
54+
"description": "client.watch succeeds on second attempt",
55+
"failPoint": {
56+
"configureFailPoint": "failCommand",
57+
"mode": {
58+
"times": 1
59+
},
60+
"data": {
61+
"failCommands": [
62+
"aggregate"
63+
],
64+
"closeConnection": true
65+
}
66+
},
67+
"operations": [
68+
{
69+
"name": "watch",
70+
"object": "client"
71+
}
72+
],
73+
"expectations": [
74+
{
75+
"command_started_event": {
76+
"command": {
77+
"aggregate": 1,
78+
"cursor": {},
79+
"pipeline": [
80+
{
81+
"$changeStream": {
82+
"fullDocument": "default",
83+
"allChangesForCluster": true
84+
}
85+
}
86+
]
87+
},
88+
"database_name": "admin"
89+
}
90+
},
91+
{
92+
"command_started_event": {
93+
"command": {
94+
"aggregate": 1,
95+
"cursor": {},
96+
"pipeline": [
97+
{
98+
"$changeStream": {
99+
"fullDocument": "default",
100+
"allChangesForCluster": true
101+
}
102+
}
103+
]
104+
},
105+
"database_name": "admin"
106+
}
107+
}
108+
]
109+
},
110+
{
111+
"description": "client.watch fails on first attempt",
112+
"clientOptions": {
113+
"retryReads": false
114+
},
115+
"failPoint": {
116+
"configureFailPoint": "failCommand",
117+
"mode": {
118+
"times": 1
119+
},
120+
"data": {
121+
"failCommands": [
122+
"aggregate"
123+
],
124+
"closeConnection": true
125+
}
126+
},
127+
"operations": [
128+
{
129+
"name": "watch",
130+
"object": "client",
131+
"error": true
132+
}
133+
],
134+
"expectations": [
135+
{
136+
"command_started_event": {
137+
"command": {
138+
"aggregate": 1,
139+
"cursor": {},
140+
"pipeline": [
141+
{
142+
"$changeStream": {
143+
"fullDocument": "default",
144+
"allChangesForCluster": true
145+
}
146+
}
147+
]
148+
},
149+
"database_name": "admin"
150+
}
151+
}
152+
]
153+
},
154+
{
155+
"description": "client.watch fails on second attempt",
156+
"failPoint": {
157+
"configureFailPoint": "failCommand",
158+
"mode": {
159+
"times": 2
160+
},
161+
"data": {
162+
"failCommands": [
163+
"aggregate"
164+
],
165+
"closeConnection": true
166+
}
167+
},
168+
"operations": [
169+
{
170+
"name": "watch",
171+
"object": "client",
172+
"error": true
173+
}
174+
],
175+
"expectations": [
176+
{
177+
"command_started_event": {
178+
"command": {
179+
"aggregate": 1,
180+
"cursor": {},
181+
"pipeline": [
182+
{
183+
"$changeStream": {
184+
"fullDocument": "default",
185+
"allChangesForCluster": true
186+
}
187+
}
188+
]
189+
},
190+
"database_name": "admin"
191+
}
192+
},
193+
{
194+
"command_started_event": {
195+
"command": {
196+
"aggregate": 1,
197+
"cursor": {},
198+
"pipeline": [
199+
{
200+
"$changeStream": {
201+
"fullDocument": "default",
202+
"allChangesForCluster": true
203+
}
204+
}
205+
]
206+
},
207+
"database_name": "admin"
208+
}
209+
}
210+
]
211+
}
212+
]
213+
}

0 commit comments

Comments
 (0)