[DRIVERS-2771] Test bypassDocumentValidation error for unacknowledged writes Created: 10/Nov/23  Updated: 10/Nov/23

Status: Needs Triage
Project: Drivers
Component/s: CRUD
Fix Version/s: None

Type: Improvement Priority: Unknown
Reporter: Preston Vasquez Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Driver Changes: Not Needed

 Description   

Summary

Add unified spec tests that ensure a client-side error is propagated when using "bypassDocumentValidation" when executing the following CRUD operations for versions < 5.1:

  • Aggregate 
  • BulkWrite
  • InsertOne
  • InsertMany
  • Update
  • Replace
  • FindOneAndReplace
  • FindOneAndUpdate

Motivation

The CRUD specifications have a requirement for using "bypassDocumentValidation" with OP_<INSERT/UPDATE/ELETE>, which is still supported in 4.x server versions. There are no unified spec tests to validate this case for the above operations. 

This behavior is tested for "hint" and is outlined in SPEC-1540.

Who is the affected end user?

Any user using an legacy CRUD opcode with unacknowledged writes.

How does this affect the end user?

From SPEC-1540:

provision for specifying such options and the user would have no way of knowing without the driver raising an error.

How likely is it that this problem or use case will occur?

If it is not currently supported by a driver, then main path.

If the problem does occur, what are the consequences and how severe are they?

Unknown

Is this issue urgent?

No

Is this ticket required by a downstream team?

No

Is this ticket only for tests?

Yes

Acceptance Criteria

Add unified spec tests to check that an error is propagated when setting bypassDocumentValidation for versions <=4.4.24

  • Aggregate 
  • BulkWrite
  • InsertOne
  • InsertMany
  • Update
  • Replace
  • FindOneAndReplace
  • FindOneAndUpdate

Generated at Thu Feb 08 08:26:22 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.