[DRIVERS-2133] Require startTransaction to report an error if the driver detects that transactions are not supported Created: 31/May/19  Updated: 31/Mar/22

Status: Backlog
Project: Drivers
Component/s: Transactions
Fix Version/s: None

Type: Spec Change Priority: Major - P3
Reporter: Jeremy Mikola Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Related
is related to CDRIVER-3161 Prohibit starting a transaction for m... Closed
Driver Changes: Needed

 Description   

The startTransaction section of the Transaction spec states:

startTransaction SHOULD report an error if the driver can detect that transactions are not supported by the deployment. A deployment does not support transactions when the deployment does not support sessions, or maxWireVersion < 7, or the maxWireVersion < 8 and the topology type is Sharded.

I recently discovered that libmongoc does not implement the maxWireVersion < 7 check and opened CDRIVER-3161 to address that. There is certainly not reason that libmongoc could not implement this.

I would propose changing the spec to MUST unless there is a legitimate reason to keep SHOULD.


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