blob: aaca90701f1f33ae37ece9721506e055a2751731 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
runOn:
-
minServerVersion: "4.0"
topology: ["single", "replicaset"]
-
minServerVersion: "4.1.7"
topology: ["sharded"]
database_name: &database_name "retryable-reads-tests"
collection_name: &collection_name "coll"
data:
- {_id: 1, x: 11}
- {_id: 2, x: 22}
- {_id: 3, x: 33}
tests:
-
description: "Distinct succeeds on first attempt"
operations:
- &retryable_operation_succeeds
<<: &retryable_operation
name: distinct
object: collection
arguments: { fieldName: "x", filter: { _id: { $gt: 1 } } }
result:
- 22
- 33
expectations:
- &retryable_command_started_event
command_started_event:
command:
distinct: *collection_name
key: "x"
query:
_id: {$gt: 1}
database_name: *database_name
-
description: "Distinct succeeds on second attempt"
failPoint: &failCommand_failPoint
configureFailPoint: failCommand
mode: { times: 1 }
data:
failCommands: [distinct]
closeConnection: true
operations: [*retryable_operation_succeeds]
expectations:
- *retryable_command_started_event
- *retryable_command_started_event
-
description: "Distinct fails on first attempt"
clientOptions:
retryReads: false
failPoint: *failCommand_failPoint
operations:
- &retryable_operation_fails
<<: *retryable_operation
error: true
expectations:
- *retryable_command_started_event
-
description: "Distinct fails on second attempt"
failPoint:
<<: *failCommand_failPoint
mode: { times: 2 }
operations: [*retryable_operation_fails]
expectations:
- *retryable_command_started_event
- *retryable_command_started_event
|