-
Type: New Feature
-
Resolution: Done
-
Priority: Major - P3
-
None
-
Component/s: None
-
None
The CRUD specification has added parameters to many of the options classes called bypassDocumentValidation. The following classes have been updated:
- AggregateOptions: only for $out
- InsertOneOptions: This is a new class, now with a single field.
- InsertManyOptions
- UpdateOptions
- BulkWriteOptions
- FindOneAndReplaceOptions
- FindOneAndUpdateOptions
Using the new option requires the BypassDocumentValidation permission which is granted to the built-in roles 'restore' and 'dbadmin'. Other commands that have been updated, but not specified in the CRUD spec are:
- applyOps
- clone
- cloneCollection
- copyDb
- mapReduce
Implementation for Unacknowledged Writes
If your driver sends unacknowledged writes using op codes (OP_INSERT, OP_UPDATE, OP_DELETE), you MUST raise an error when bypassDocumentValidation is explicitly set (true or false) by a user on >= 3.2 servers.
- depends on
-
CDRIVER-893 Support bypassDocumentValidation
- Closed
-
CSHARP-1427 Support bypassDocumentValidation
- Closed
-
CXX-689 Support bypassDocumentValidation
- Closed
-
CXX-690 Support bypassDocumentValidation
- Closed
-
JAVA-1985 Support bypassDocumentValidation
- Closed
-
NODE-540 Document validation
- Closed
-
PHPLIB-125 Support bypassDocumentValidation option for write operations
- Closed
-
PYTHON-982 Support bypassDocumentValidation
- Closed
-
RUBY-1036 Support bypassDocumentValidation option
- Closed
-
RUST-15 Support bypassDocumentValidation
- Closed
-
PHPC-443 Support bypassDocumentValidation option for insert and update commands
- Closed
- related to
-
CDRIVER-957 w=0 with bypassDocumentValidation set must error
- Closed
-
SERVER-20783 aggregate $out + validator error: wrong error code
- Closed
-
DRIVERS-269 Create/modify collection helpers needs to support creating "validators"
- Closed
-
SERVER-18227 Document Validation
- Closed
-
PHPLIB-124 Operation classes that take options should not ignore unrecognized options
- Closed