If a shard returns a network error to mongos in the course of a transaction, mongos will abort the transaction and return that error to the client. Currently these errors do not generate a transient transaction error label, so the client won't retry the the transaction at a higher txnNumber, but it would be safe to do so for every statement prior to commitTransaction (its unclear if commit was successful on a network error, so the commit needs to be retried with the same txnNumber to avoid double applying the transaction). This is in line with how drivers already treat network errors from single replica set transactions as transient errors.
Attach TransientTransactionError error label for network error codes in a transaction
- Votes:
-
0 Vote for this issue
- Watchers:
-
2 Start watching this issue
- Created:
- Updated:
- Resolved: