mongo 2.11.0.rc0 → 2.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/Rakefile +2 -0
- data/lib/mongo/auth.rb +11 -2
- data/lib/mongo/auth/cr/conversation.rb +1 -1
- data/lib/mongo/auth/ldap/conversation.rb +1 -1
- data/lib/mongo/auth/scram/conversation.rb +4 -1
- data/lib/mongo/auth/user.rb +15 -1
- data/lib/mongo/auth/user/view.rb +10 -4
- data/lib/mongo/auth/x509.rb +11 -1
- data/lib/mongo/auth/x509/conversation.rb +15 -6
- data/lib/mongo/background_thread.rb +28 -13
- data/lib/mongo/client.rb +23 -15
- data/lib/mongo/collection/view/change_stream.rb +5 -1
- data/lib/mongo/collection/view/readable.rb +5 -2
- data/lib/mongo/collection/view/writable.rb +3 -1
- data/lib/mongo/cursor/builder/get_more_command.rb +4 -1
- data/lib/mongo/cursor/builder/kill_cursors_command.rb +16 -5
- data/lib/mongo/cursor/builder/op_get_more.rb +2 -2
- data/lib/mongo/cursor/builder/op_kill_cursors.rb +17 -5
- data/lib/mongo/error/operation_failure.rb +3 -3
- data/lib/mongo/monitoring/command_log_subscriber.rb +5 -3
- data/lib/mongo/monitoring/event/command_started.rb +13 -3
- data/lib/mongo/monitoring/publishable.rb +4 -2
- data/lib/mongo/operation/create_user/command.rb +1 -0
- data/lib/mongo/operation/remove_user/command.rb +1 -0
- data/lib/mongo/operation/update_user/command.rb +1 -0
- data/lib/mongo/protocol/get_more.rb +2 -1
- data/lib/mongo/protocol/kill_cursors.rb +6 -13
- data/lib/mongo/protocol/serializers.rb +10 -4
- data/lib/mongo/retryable.rb +1 -1
- data/lib/mongo/server/connection.rb +6 -2
- data/lib/mongo/server/connection_base.rb +2 -1
- data/lib/mongo/server/monitor.rb +1 -1
- data/lib/mongo/server/pending_connection.rb +6 -0
- data/lib/mongo/socket/ssl.rb +1 -1
- data/lib/mongo/uri.rb +5 -41
- data/lib/mongo/version.rb +1 -1
- data/mongo.gemspec +11 -2
- data/spec/README.md +105 -9
- data/spec/USERS.md +72 -0
- data/spec/integration/auth_spec.rb +20 -6
- data/spec/integration/client_construction_spec.rb +3 -1
- data/spec/integration/client_options_spec.rb +437 -0
- data/spec/integration/command_monitoring_spec.rb +4 -1
- data/spec/integration/connection_pool_populator_spec.rb +4 -0
- data/spec/integration/connection_spec.rb +4 -2
- data/spec/integration/cursor_reaping_spec.rb +1 -1
- data/spec/integration/get_more_spec.rb +32 -0
- data/spec/integration/retryable_errors_spec.rb +99 -0
- data/spec/integration/retryable_writes_errors_spec.rb +11 -10
- data/spec/lite_spec_helper.rb +2 -1
- data/spec/mongo/auth/scram_spec.rb +1 -0
- data/spec/mongo/auth/user/view_spec.rb +102 -1
- data/spec/mongo/auth/user_spec.rb +56 -15
- data/spec/mongo/auth/x509_spec.rb +31 -1
- data/spec/mongo/bulk_write_spec.rb +2 -2
- data/spec/mongo/collection/view/change_stream_spec.rb +2 -2
- data/spec/mongo/collection/view/readable_spec.rb +8 -4
- data/spec/mongo/cursor/builder/get_more_command_spec.rb +4 -2
- data/spec/mongo/cursor/builder/op_get_more_spec.rb +4 -2
- data/spec/mongo/cursor_spec.rb +3 -3
- data/spec/mongo/retryable_spec.rb +31 -52
- data/spec/mongo/server/connection_auth_spec.rb +3 -0
- data/spec/mongo/server/connection_pool_spec.rb +4 -0
- data/spec/mongo/server/connection_spec.rb +12 -4
- data/spec/mongo/server/monitor_spec.rb +19 -1
- data/spec/mongo/socket/ssl_spec.rb +1 -1
- data/spec/mongo/uri/srv_protocol_spec.rb +0 -13
- data/spec/mongo/uri_option_parsing_spec.rb +0 -8
- data/spec/mongo/uri_spec.rb +6 -20
- data/spec/runners/connection_string.rb +116 -0
- data/spec/runners/read_write_concern_document.rb +67 -0
- data/spec/spec_tests/change_streams_spec.rb +17 -2
- data/spec/spec_tests/connection_string_spec.rb +2 -59
- data/spec/spec_tests/data/change_streams/change-streams-errors.yml +3 -3
- data/spec/spec_tests/data/change_streams/change-streams.yml +88 -20
- data/spec/spec_tests/data/cmap/connection-must-have-id.yml +6 -0
- data/spec/spec_tests/data/cmap/connection-must-order-ids.yml +6 -0
- data/spec/spec_tests/data/cmap/pool-checkin-destroy-closed.yml +3 -0
- data/spec/spec_tests/data/cmap/pool-checkin-destroy-stale.yml +3 -0
- data/spec/spec_tests/data/cmap/pool-checkin-make-available.yml +3 -0
- data/spec/spec_tests/data/cmap/pool-checkin.yml +1 -0
- data/spec/spec_tests/data/cmap/pool-checkout-connection.yml +2 -0
- data/spec/spec_tests/data/cmap/pool-checkout-error-closed.yml +5 -0
- data/spec/spec_tests/data/cmap/pool-checkout-multiple.yml +3 -0
- data/spec/spec_tests/data/cmap/pool-checkout-no-idle.yml +4 -0
- data/spec/spec_tests/data/cmap/pool-checkout-no-stale.yml +4 -0
- data/spec/spec_tests/data/cmap/pool-close-destroy-conns.yml +2 -0
- data/spec/spec_tests/data/cmap/pool-create-max-size.yml +15 -0
- data/spec/spec_tests/data/cmap/pool-create-min-size.yml +4 -0
- data/spec/spec_tests/data/cmap/wait-queue-fairness.yml +31 -1
- data/spec/spec_tests/data/cmap/wait-queue-timeout.yml +5 -0
- data/spec/spec_tests/data/read_write_concern/connection-string/read-concern.yml +32 -0
- data/spec/spec_tests/data/read_write_concern/connection-string/write-concern.yml +82 -0
- data/spec/spec_tests/data/read_write_concern/document/read-concern.yml +37 -0
- data/spec/spec_tests/data/read_write_concern/document/write-concern.yml +100 -0
- data/spec/spec_tests/data/retryable_reads/aggregate-merge.yml +39 -0
- data/spec/spec_tests/data/retryable_reads/aggregate-serverErrors.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/changeStreams-client.watch-serverErrors.yml +2 -2
- data/spec/spec_tests/data/retryable_reads/changeStreams-client.watch.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/changeStreams-db.coll.watch-serverErrors.yml +2 -2
- data/spec/spec_tests/data/retryable_reads/changeStreams-db.coll.watch.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/changeStreams-db.watch-serverErrors.yml +2 -2
- data/spec/spec_tests/data/retryable_reads/changeStreams-db.watch.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/count-serverErrors.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/countDocuments-serverErrors.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/distinct-serverErrors.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/estimatedDocumentCount-serverErrors.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/find-serverErrors.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/findOne-serverErrors.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/gridfs-download-serverErrors.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/gridfs-downloadByName-serverErrors.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/listCollectionNames-serverErrors.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/listCollectionObjects-serverErrors.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/listCollections-serverErrors.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/listDatabaseNames-serverErrors.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/listDatabaseObjects-serverErrors.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/listDatabases-serverErrors.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/listIndexNames-serverErrors.yml +1 -1
- data/spec/spec_tests/data/retryable_reads/listIndexes-serverErrors.yml +1 -1
- data/spec/spec_tests/data/transactions/read-concern.yml +6 -6
- data/spec/spec_tests/data/transactions/transaction-options-repl.yml +117 -0
- data/spec/spec_tests/data/transactions/transaction-options.yml +14 -121
- data/spec/spec_tests/data/transactions/write-concern.yml +3 -0
- data/spec/spec_tests/data/transactions_api/transaction-options.yml +11 -12
- data/spec/spec_tests/dns_seedlist_discovery_spec.rb +17 -7
- data/spec/spec_tests/read_write_concern_connection_string_spec.rb +8 -0
- data/spec/spec_tests/read_write_concern_document_spec.rb +74 -0
- data/spec/spec_tests/retryable_reads_spec.rb +32 -1
- data/spec/spec_tests/uri_options_spec.rb +4 -2
- data/spec/support/auth.rb +5 -14
- data/spec/support/certificates/client-x509.crt +78 -0
- data/spec/support/certificates/client-x509.key +27 -0
- data/spec/support/certificates/client-x509.pem +105 -0
- data/spec/support/change_streams.rb +8 -11
- data/spec/support/client_registry.rb +26 -12
- data/spec/support/cluster_tools.rb +2 -2
- data/spec/support/cmap.rb +11 -7
- data/spec/support/command_monitoring.rb +8 -8
- data/spec/support/connection_string.rb +56 -28
- data/spec/support/constraints.rb +8 -0
- data/spec/support/crud/spec.rb +5 -8
- data/spec/support/event_subscriber.rb +7 -0
- data/spec/support/gridfs.rb +4 -7
- data/spec/support/server_discovery_and_monitoring.rb +3 -8
- data/spec/support/server_selection.rb +4 -9
- data/spec/support/server_selection_rtt.rb +4 -7
- data/spec/support/spec_config.rb +47 -19
- data/spec/support/spec_setup.rb +5 -0
- data/spec/support/utils.rb +46 -8
- metadata +637 -597
- metadata.gz.sig +0 -0
@@ -0,0 +1,117 @@
|
|
1
|
+
runOn:
|
2
|
+
- minServerVersion: "4.0"
|
3
|
+
topology: ["replicaset"]
|
4
|
+
|
5
|
+
database_name: &database_name "transaction-tests"
|
6
|
+
collection_name: &collection_name "test"
|
7
|
+
|
8
|
+
data: []
|
9
|
+
|
10
|
+
tests:
|
11
|
+
|
12
|
+
- description: readConcern snapshot in startTransaction options
|
13
|
+
|
14
|
+
sessionOptions:
|
15
|
+
session0:
|
16
|
+
defaultTransactionOptions:
|
17
|
+
readConcern:
|
18
|
+
level: majority # Overridden.
|
19
|
+
|
20
|
+
operations:
|
21
|
+
- name: startTransaction
|
22
|
+
object: session0
|
23
|
+
arguments:
|
24
|
+
options:
|
25
|
+
readConcern:
|
26
|
+
level: snapshot
|
27
|
+
- name: insertOne
|
28
|
+
object: collection
|
29
|
+
arguments:
|
30
|
+
session: session0
|
31
|
+
document:
|
32
|
+
_id: 1
|
33
|
+
result:
|
34
|
+
insertedId: 1
|
35
|
+
- name: commitTransaction
|
36
|
+
object: session0
|
37
|
+
# Now test abort.
|
38
|
+
- name: startTransaction
|
39
|
+
object: session0
|
40
|
+
arguments:
|
41
|
+
options:
|
42
|
+
readConcern:
|
43
|
+
level: snapshot
|
44
|
+
- name: insertOne
|
45
|
+
object: collection
|
46
|
+
arguments:
|
47
|
+
session: session0
|
48
|
+
document:
|
49
|
+
_id: 2
|
50
|
+
result:
|
51
|
+
insertedId: 2
|
52
|
+
- name: abortTransaction
|
53
|
+
object: session0
|
54
|
+
|
55
|
+
expectations:
|
56
|
+
- command_started_event:
|
57
|
+
command:
|
58
|
+
insert: *collection_name
|
59
|
+
documents:
|
60
|
+
- _id: 1
|
61
|
+
ordered: true
|
62
|
+
lsid: session0
|
63
|
+
txnNumber:
|
64
|
+
$numberLong: "1"
|
65
|
+
startTransaction: true
|
66
|
+
autocommit: false
|
67
|
+
readConcern:
|
68
|
+
level: snapshot
|
69
|
+
writeConcern:
|
70
|
+
command_name: insert
|
71
|
+
database_name: *database_name
|
72
|
+
- command_started_event:
|
73
|
+
command:
|
74
|
+
commitTransaction: 1
|
75
|
+
lsid: session0
|
76
|
+
txnNumber:
|
77
|
+
$numberLong: "1"
|
78
|
+
startTransaction:
|
79
|
+
autocommit: false
|
80
|
+
readConcern:
|
81
|
+
writeConcern:
|
82
|
+
command_name: commitTransaction
|
83
|
+
database_name: admin
|
84
|
+
- command_started_event:
|
85
|
+
command:
|
86
|
+
insert: *collection_name
|
87
|
+
documents:
|
88
|
+
- _id: 2
|
89
|
+
ordered: true
|
90
|
+
lsid: session0
|
91
|
+
txnNumber:
|
92
|
+
$numberLong: "2"
|
93
|
+
startTransaction: true
|
94
|
+
autocommit: false
|
95
|
+
readConcern:
|
96
|
+
level: snapshot
|
97
|
+
afterClusterTime: 42
|
98
|
+
writeConcern:
|
99
|
+
command_name: insert
|
100
|
+
database_name: *database_name
|
101
|
+
- command_started_event:
|
102
|
+
command:
|
103
|
+
abortTransaction: 1
|
104
|
+
lsid: session0
|
105
|
+
txnNumber:
|
106
|
+
$numberLong: "2"
|
107
|
+
startTransaction:
|
108
|
+
autocommit: false
|
109
|
+
readConcern:
|
110
|
+
writeConcern:
|
111
|
+
command_name: abortTransaction
|
112
|
+
database_name: admin
|
113
|
+
|
114
|
+
outcome:
|
115
|
+
collection:
|
116
|
+
data:
|
117
|
+
- _id: 1
|
@@ -2,12 +2,9 @@ runOn:
|
|
2
2
|
-
|
3
3
|
minServerVersion: "4.0"
|
4
4
|
topology: ["replicaset"]
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
#-
|
9
|
-
# minServerVersion: "4.1.8"
|
10
|
-
# topology: ["sharded"]
|
5
|
+
-
|
6
|
+
minServerVersion: "4.1.8"
|
7
|
+
topology: ["sharded"]
|
11
8
|
|
12
9
|
database_name: &database_name "transaction-tests"
|
13
10
|
collection_name: &collection_name "test"
|
@@ -183,7 +180,7 @@ tests:
|
|
183
180
|
session0:
|
184
181
|
defaultTransactionOptions:
|
185
182
|
readConcern:
|
186
|
-
level:
|
183
|
+
level: majority
|
187
184
|
writeConcern:
|
188
185
|
w: 1
|
189
186
|
|
@@ -202,7 +199,7 @@ tests:
|
|
202
199
|
startTransaction: true
|
203
200
|
autocommit: false
|
204
201
|
readConcern:
|
205
|
-
level:
|
202
|
+
level: majority
|
206
203
|
writeConcern:
|
207
204
|
command_name: insert
|
208
205
|
database_name: *database_name
|
@@ -231,7 +228,7 @@ tests:
|
|
231
228
|
startTransaction: true
|
232
229
|
autocommit: false
|
233
230
|
readConcern:
|
234
|
-
level:
|
231
|
+
level: majority
|
235
232
|
afterClusterTime: 42
|
236
233
|
writeConcern:
|
237
234
|
command_name: insert
|
@@ -262,7 +259,7 @@ tests:
|
|
262
259
|
session0:
|
263
260
|
defaultTransactionOptions:
|
264
261
|
readConcern:
|
265
|
-
level:
|
262
|
+
level: snapshot
|
266
263
|
writeConcern:
|
267
264
|
w: 1
|
268
265
|
|
@@ -272,7 +269,7 @@ tests:
|
|
272
269
|
arguments:
|
273
270
|
options:
|
274
271
|
readConcern:
|
275
|
-
level:
|
272
|
+
level: majority
|
276
273
|
writeConcern:
|
277
274
|
w: majority
|
278
275
|
- name: insertOne
|
@@ -290,7 +287,7 @@ tests:
|
|
290
287
|
arguments:
|
291
288
|
options:
|
292
289
|
readConcern:
|
293
|
-
level:
|
290
|
+
level: majority
|
294
291
|
writeConcern:
|
295
292
|
w: majority
|
296
293
|
- name: insertOne
|
@@ -317,7 +314,7 @@ tests:
|
|
317
314
|
startTransaction: true
|
318
315
|
autocommit: false
|
319
316
|
readConcern:
|
320
|
-
level:
|
317
|
+
level: majority
|
321
318
|
writeConcern:
|
322
319
|
command_name: insert
|
323
320
|
database_name: *database_name
|
@@ -346,7 +343,7 @@ tests:
|
|
346
343
|
startTransaction: true
|
347
344
|
autocommit: false
|
348
345
|
readConcern:
|
349
|
-
level:
|
346
|
+
level: majority
|
350
347
|
afterClusterTime: 42
|
351
348
|
writeConcern:
|
352
349
|
command_name: insert
|
@@ -377,7 +374,7 @@ tests:
|
|
377
374
|
session0:
|
378
375
|
defaultTransactionOptions:
|
379
376
|
readConcern:
|
380
|
-
level:
|
377
|
+
level: majority
|
381
378
|
writeConcern:
|
382
379
|
w: majority
|
383
380
|
|
@@ -396,7 +393,7 @@ tests:
|
|
396
393
|
startTransaction: true
|
397
394
|
autocommit: false
|
398
395
|
readConcern:
|
399
|
-
level:
|
396
|
+
level: majority
|
400
397
|
writeConcern:
|
401
398
|
command_name: insert
|
402
399
|
database_name: *database_name
|
@@ -425,7 +422,7 @@ tests:
|
|
425
422
|
startTransaction: true
|
426
423
|
autocommit: false
|
427
424
|
readConcern:
|
428
|
-
level:
|
425
|
+
level: majority
|
429
426
|
afterClusterTime: 42
|
430
427
|
writeConcern:
|
431
428
|
command_name: insert
|
@@ -522,110 +519,6 @@ tests:
|
|
522
519
|
|
523
520
|
outcome: *outcome
|
524
521
|
|
525
|
-
- description: readConcern snapshot in startTransaction options
|
526
|
-
|
527
|
-
sessionOptions:
|
528
|
-
session0:
|
529
|
-
defaultTransactionOptions:
|
530
|
-
readConcern:
|
531
|
-
level: majority # Overridden.
|
532
|
-
|
533
|
-
operations:
|
534
|
-
- name: startTransaction
|
535
|
-
object: session0
|
536
|
-
arguments:
|
537
|
-
options:
|
538
|
-
readConcern:
|
539
|
-
level: snapshot
|
540
|
-
- name: insertOne
|
541
|
-
object: collection
|
542
|
-
arguments:
|
543
|
-
session: session0
|
544
|
-
document:
|
545
|
-
_id: 1
|
546
|
-
result:
|
547
|
-
insertedId: 1
|
548
|
-
- name: commitTransaction
|
549
|
-
object: session0
|
550
|
-
# Now test abort.
|
551
|
-
- name: startTransaction
|
552
|
-
object: session0
|
553
|
-
arguments:
|
554
|
-
options:
|
555
|
-
readConcern:
|
556
|
-
level: snapshot
|
557
|
-
- name: insertOne
|
558
|
-
object: collection
|
559
|
-
arguments:
|
560
|
-
session: session0
|
561
|
-
document:
|
562
|
-
_id: 2
|
563
|
-
result:
|
564
|
-
insertedId: 2
|
565
|
-
- name: abortTransaction
|
566
|
-
object: session0
|
567
|
-
|
568
|
-
expectations:
|
569
|
-
- command_started_event:
|
570
|
-
command:
|
571
|
-
insert: *collection_name
|
572
|
-
documents:
|
573
|
-
- _id: 1
|
574
|
-
ordered: true
|
575
|
-
lsid: session0
|
576
|
-
txnNumber:
|
577
|
-
$numberLong: "1"
|
578
|
-
startTransaction: true
|
579
|
-
autocommit: false
|
580
|
-
readConcern:
|
581
|
-
level: snapshot
|
582
|
-
writeConcern:
|
583
|
-
command_name: insert
|
584
|
-
database_name: *database_name
|
585
|
-
- command_started_event:
|
586
|
-
command:
|
587
|
-
commitTransaction: 1
|
588
|
-
lsid: session0
|
589
|
-
txnNumber:
|
590
|
-
$numberLong: "1"
|
591
|
-
startTransaction:
|
592
|
-
autocommit: false
|
593
|
-
readConcern:
|
594
|
-
writeConcern:
|
595
|
-
command_name: commitTransaction
|
596
|
-
database_name: admin
|
597
|
-
- command_started_event:
|
598
|
-
command:
|
599
|
-
insert: *collection_name
|
600
|
-
documents:
|
601
|
-
- _id: 2
|
602
|
-
ordered: true
|
603
|
-
lsid: session0
|
604
|
-
txnNumber:
|
605
|
-
$numberLong: "2"
|
606
|
-
startTransaction: true
|
607
|
-
autocommit: false
|
608
|
-
readConcern:
|
609
|
-
level: snapshot
|
610
|
-
afterClusterTime: 42
|
611
|
-
writeConcern:
|
612
|
-
command_name: insert
|
613
|
-
database_name: *database_name
|
614
|
-
- command_started_event:
|
615
|
-
command:
|
616
|
-
abortTransaction: 1
|
617
|
-
lsid: session0
|
618
|
-
txnNumber:
|
619
|
-
$numberLong: "2"
|
620
|
-
startTransaction:
|
621
|
-
autocommit: false
|
622
|
-
readConcern:
|
623
|
-
writeConcern:
|
624
|
-
command_name: abortTransaction
|
625
|
-
database_name: admin
|
626
|
-
|
627
|
-
outcome: *outcome
|
628
|
-
|
629
522
|
- description: client writeConcern ignored for bulk
|
630
523
|
|
631
524
|
clientOptions:
|
@@ -2,10 +2,9 @@ runOn:
|
|
2
2
|
-
|
3
3
|
minServerVersion: "4.0"
|
4
4
|
topology: ["replicaset"]
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
# topology: ["sharded"]
|
5
|
+
-
|
6
|
+
minServerVersion: "4.1.8"
|
7
|
+
topology: ["sharded"]
|
9
8
|
|
10
9
|
database_name: &database_name "withTransaction-tests"
|
11
10
|
collection_name: &collection_name "test"
|
@@ -109,7 +108,7 @@ tests:
|
|
109
108
|
sessionOptions:
|
110
109
|
session0:
|
111
110
|
defaultTransactionOptions:
|
112
|
-
readConcern: { level:
|
111
|
+
readConcern: { level: majority }
|
113
112
|
writeConcern: { w: 1 }
|
114
113
|
operations: *operations
|
115
114
|
expectations:
|
@@ -124,7 +123,7 @@ tests:
|
|
124
123
|
txnNumber: { $numberLong: "1" }
|
125
124
|
startTransaction: true
|
126
125
|
autocommit: false
|
127
|
-
readConcern: { level:
|
126
|
+
readConcern: { level: majority }
|
128
127
|
# omitted fields
|
129
128
|
writeConcern: ~
|
130
129
|
command_name: insert
|
@@ -162,7 +161,7 @@ tests:
|
|
162
161
|
result:
|
163
162
|
insertedId: 1
|
164
163
|
options:
|
165
|
-
readConcern: { level:
|
164
|
+
readConcern: { level: majority }
|
166
165
|
writeConcern: { w: 1 }
|
167
166
|
expectations:
|
168
167
|
-
|
@@ -176,7 +175,7 @@ tests:
|
|
176
175
|
txnNumber: { $numberLong: "1" }
|
177
176
|
startTransaction: true
|
178
177
|
autocommit: false
|
179
|
-
readConcern: { level:
|
178
|
+
readConcern: { level: majority }
|
180
179
|
# omitted fields
|
181
180
|
writeConcern: ~
|
182
181
|
command_name: insert
|
@@ -201,7 +200,7 @@ tests:
|
|
201
200
|
sessionOptions:
|
202
201
|
session0:
|
203
202
|
defaultTransactionOptions:
|
204
|
-
readConcern: { level:
|
203
|
+
readConcern: { level: snapshot }
|
205
204
|
writeConcern: { w: majority }
|
206
205
|
operations: *operations_explicit_transactionOptions
|
207
206
|
expectations:
|
@@ -216,7 +215,7 @@ tests:
|
|
216
215
|
txnNumber: { $numberLong: "1" }
|
217
216
|
startTransaction: true
|
218
217
|
autocommit: false
|
219
|
-
readConcern: { level:
|
218
|
+
readConcern: { level: majority }
|
220
219
|
# omitted fields
|
221
220
|
writeConcern: ~
|
222
221
|
command_name: insert
|
@@ -239,7 +238,7 @@ tests:
|
|
239
238
|
description: withTransaction explicit transaction options override client options
|
240
239
|
useMultipleMongoses: true
|
241
240
|
clientOptions:
|
242
|
-
readConcernLevel:
|
241
|
+
readConcernLevel: local
|
243
242
|
w: majority
|
244
243
|
operations: *operations_explicit_transactionOptions
|
245
244
|
expectations:
|
@@ -254,7 +253,7 @@ tests:
|
|
254
253
|
txnNumber: { $numberLong: "1" }
|
255
254
|
startTransaction: true
|
256
255
|
autocommit: false
|
257
|
-
readConcern: { level:
|
256
|
+
readConcern: { level: majority }
|
258
257
|
# omitted fields
|
259
258
|
writeConcern: ~
|
260
259
|
command_name: insert
|
@@ -5,15 +5,13 @@ describe 'DNS Seedlist Discovery' do
|
|
5
5
|
|
6
6
|
include Mongo::ConnectionString
|
7
7
|
|
8
|
-
DNS_SEEDLIST_DISCOVERY_TESTS.each do |
|
8
|
+
DNS_SEEDLIST_DISCOVERY_TESTS.each do |test_path|
|
9
9
|
|
10
|
-
|
11
|
-
spec = YAML.load(ERB.new(file.read).result)
|
12
|
-
file.close
|
10
|
+
spec = YAML.load(File.read(test_path))
|
13
11
|
|
14
12
|
test = Mongo::ConnectionString::Test.new(spec)
|
15
13
|
|
16
|
-
context(File.basename(
|
14
|
+
context(File.basename(test_path)) do
|
17
15
|
|
18
16
|
context 'when the uri is invalid', if: test.raise_error? do
|
19
17
|
|
@@ -43,8 +41,20 @@ describe 'DNS Seedlist Discovery' do
|
|
43
41
|
expect(test.uri).to be_a(Mongo::URI::SRVProtocol)
|
44
42
|
end
|
45
43
|
|
46
|
-
|
47
|
-
|
44
|
+
if test.seeds
|
45
|
+
# DNS seed list tests specify both seeds and hosts.
|
46
|
+
# To get the hosts, the client must do SDAM (as required in the
|
47
|
+
# spec tests' description), but this isn't testing DNS seed list -
|
48
|
+
# it is testing SDAM. Plus, all of the hosts are always the same.
|
49
|
+
# If seed list is given in the expectations, just test the seed
|
50
|
+
# list and not the expanded hosts.
|
51
|
+
it 'creates a client with the correct seeds' do
|
52
|
+
expect(test.client).to have_hosts(test, test.seeds)
|
53
|
+
end
|
54
|
+
else
|
55
|
+
it 'creates a client with the correct hosts' do
|
56
|
+
expect(test.client).to have_hosts(test, test.hosts)
|
57
|
+
end
|
48
58
|
end
|
49
59
|
|
50
60
|
it 'creates a client with the correct options' do
|