Details
-
Task
-
Status: Closed
-
Major - P3
-
Resolution: Fixed
-
None
-
Fully Compatible
-
Sharding 2018-10-22
-
56
Description
The transaction coordinator removes itself from the coordinator catalog when it decides to abort, but it does so through a promise, which requires dropping the coordinator mutex. This allows a voteCommit to be processed by a coordinator in the kAborted state, which currently leads to no action. Instead, this should be treated the same as the non-existent coordinator case (see SERVER-37018), which sends abortTransaction to the participant that sent voteCommit.