-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
Fully Compatible
-
Sharding 2018-12-17, Sharding 2018-12-31
- the router returns the recovery token on the response to the first statement
- the client can send the recovery token on any later statements, including 'commitTransaction' and 'abortTransaction', but the router will only make use of the recovery token in commitTransaction, and only if the router does not know about the transaction
- to make use of the recovery token, the router sends 'recoverTransaction' to the shard identified by the token
- a shard that receives 'recoverTransaction' returns NoSuchTransaction if the shard does not know about the transaction. otherwise, if the decision has been made, returns the decision; if the decision has not been made, decides to abort.
- depends on
-
SERVER-37440 coordinateCommit should fall back to recovering decision from local participant
- Closed
- is depended on by
-
DRIVERS-586 Support sharded transactions recovery token
- Development Complete
-
SERVER-37851 Create stepdown resilient fsm workload for cross-shard txn
- Closed
- is duplicated by
-
SERVER-38420 Mongos returns confusing error message if receives request with higher transaction number without 'startTransaction'
- Closed
- is related to
-
SERVER-39187 Rerunning commitTransaction on a new mongos blocks forever
- Closed
-
SERVER-39726 Recovering the state of an uncommitted transaction should not block
- Closed
-
SERVER-39349 Recovering the state of a completed single-shard transaction should not block
- Closed
- related to
-
SERVER-39692 Make graceful MongoS shutdown drain all in-progress transactions
- Closed