File tree Expand file tree Collapse file tree 4 files changed +75
-2
lines changed Expand file tree Collapse file tree 4 files changed +75
-2
lines changed Original file line number Diff line number Diff line change @@ -2354,6 +2354,13 @@ async def bulk_write(
2354
2354
if not write_concern :
2355
2355
write_concern = self .write_concern
2356
2356
2357
+ if not write_concern .acknowledged and verbose_results :
2358
+ raise InvalidOperation (
2359
+ "Cannot request unacknowledged write concern and verbose results"
2360
+ )
2361
+ elif not write_concern .acknowledged and ordered :
2362
+ raise InvalidOperation ("Cannot request unacknowledged write concern and ordered writes" )
2363
+
2357
2364
common .validate_list ("models" , models )
2358
2365
2359
2366
blk = _AsyncClientBulk (
Original file line number Diff line number Diff line change @@ -2342,6 +2342,13 @@ def bulk_write(
2342
2342
if not write_concern :
2343
2343
write_concern = self .write_concern
2344
2344
2345
+ if not write_concern .acknowledged and verbose_results :
2346
+ raise InvalidOperation (
2347
+ "Cannot request unacknowledged write concern and verbose results"
2348
+ )
2349
+ elif not write_concern .acknowledged and ordered :
2350
+ raise InvalidOperation ("Cannot request unacknowledged write concern and ordered writes" )
2351
+
2345
2352
common .validate_list ("models" , models )
2346
2353
2347
2354
blk = _ClientBulk (
Original file line number Diff line number Diff line change 91
91
}
92
92
}
93
93
}
94
- ]
94
+ ],
95
+ "ordered" : false
95
96
},
96
97
"expectResult" : {
97
98
"insertedCount" : {
158
159
"command" : {
159
160
"bulkWrite" : 1 ,
160
161
"errorsOnly" : true ,
161
- "ordered" : true ,
162
+ "ordered" : false ,
162
163
"ops" : [
163
164
{
164
165
"insert" : 0 ,
Original file line number Diff line number Diff line change 450
450
}
451
451
}
452
452
]
453
+ },
454
+ {
455
+ "description" : " Requesting unacknowledged write with verboseResults is a client-side error" ,
456
+ "operations" : [
457
+ {
458
+ "name" : " clientBulkWrite" ,
459
+ "object" : " client0" ,
460
+ "arguments" : {
461
+ "models" : [
462
+ {
463
+ "insertOne" : {
464
+ "namespace" : " crud-tests.coll0" ,
465
+ "document" : {
466
+ "_id" : 10
467
+ }
468
+ }
469
+ }
470
+ ],
471
+ "verboseResults" : true ,
472
+ "ordered" : false ,
473
+ "writeConcern" : {
474
+ "w" : 0
475
+ }
476
+ },
477
+ "expectError" : {
478
+ "isClientError" : true ,
479
+ "errorContains" : " Cannot request unacknowledged write concern and verbose results"
480
+ }
481
+ }
482
+ ]
483
+ },
484
+ {
485
+ "description" : " Requesting unacknowledged write with ordered is a client-side error" ,
486
+ "operations" : [
487
+ {
488
+ "name" : " clientBulkWrite" ,
489
+ "object" : " client0" ,
490
+ "arguments" : {
491
+ "models" : [
492
+ {
493
+ "insertOne" : {
494
+ "namespace" : " crud-tests.coll0" ,
495
+ "document" : {
496
+ "_id" : 10
497
+ }
498
+ }
499
+ }
500
+ ],
501
+ "writeConcern" : {
502
+ "w" : 0
503
+ }
504
+ },
505
+ "expectError" : {
506
+ "isClientError" : true ,
507
+ "errorContains" : " Cannot request unacknowledged write concern and ordered writes"
508
+ }
509
+ }
510
+ ]
453
511
}
454
512
]
455
513
}
You can’t perform that action at this time.
0 commit comments