[SERVER-39227] Mongos should always return original error in a transaction Created: 28/Jan/19  Updated: 17/Dec/23  Resolved: 25/Feb/19

Status: Closed
Project: Core Server
Component/s: Sharding
Affects Version/s: None
Fix Version/s: 4.1.9

Type: Task Priority: Major - P3
Reporter: Jack Mulrow Assignee: Jack Mulrow
Resolution: Fixed Votes: 0
Labels: ShardedTxn:RouterSupport
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
related to SERVER-84264 Make DBClientBase for the shell never... Closed
Backwards Compatibility: Fully Compatible
Sprint: Sharding 2019-02-11, Sharding 2019-02-25, Sharding 2019-03-11
Participants:

 Description   

When mongos exhausts its retries on retryable errors (e.g. StaleShardVersion, sometimes SnapshotTooOld, etc.) or receives a bad status when aborting on a cleared participant between retries, it will implicitly abort the transaction and throw NoSuchTransaction to return a response with a TransientTransactionError error label to the user. Instead, the original error should always be thrown and the response should continue to generate a TransientTransactionError label.



 Comments   
Comment by Githook User [ 25/Feb/19 ]

Author:

{'name': 'Jack Mulrow', 'username': 'jsmulrow', 'email': 'jack.mulrow@mongodb.com'}

Message: SERVER-39227 Mongos should always re-throw original error in a transaction
Branch: master
https://github.com/mongodb/mongo/commit/e241839a6a3f0d9249ef735d27be9cd6d797003a

Comment by Githook User [ 19/Feb/19 ]

Author:

{'name': 'Jack Mulrow', 'email': 'jack.mulrow@mongodb.com', 'username': 'jsmulrow'}

Message: SERVER-39227 Don't throw StaleConfig from command response in DBClientBase when connected to mongos
Branch: master
https://github.com/mongodb/mongo/commit/ee79572485de54e02caf9055f86855014b904179

Generated at Thu Feb 08 04:51:25 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.