[DRIVERS-2084] Transaction spec should say MUST when adding TransientTransactionError Created: 15/Jun/18  Updated: 31/Mar/22

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

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

Issue Links:
Depends
Driver Changes: Needed

 Description   

The TransientTransactionError section in the transactions spec says:

Any command error that includes the "TransientTransactionError" error label in the "errorLabels" field. Any network error or server selection error encountered running any command besides commitTransaction in a transaction.

The tests already assert that the driver adds the label to network errors. We should update the spec to use stronger language and say that drivers MUST label these errors.



 Comments   
Comment by David Golden [ 15/Jun/18 ]

Let's also clarify which of these we mean:

  • "in a transaction, any network error or server selection error encountered running any command besides commitTransaction MUST be labeled TransientTransactionError"
  • "any network error or server selection error encountered running any command besides commitTransaction MUST be labeled TransientTransactionError"

I.e. is the "in a transaction clause" modifying the entire requirement or is it only an informative note that commitTransaction happens as part of a transaction?

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