Applying operations for a prepared transaction catches exceptions returns them as a Status. This escapes the caller's writeConflict retry block. The block re-throws a WriteConflict status to its exception, but fails to do the same for the TemporarilyUnavailableException (TUE) and trips an fassert.
We should at a minimum catch the TUE and rethrow it. Ideally, we should convert the code to throw directly instead of catching and returning a status.
- is duplicated by
-
SERVER-80461 Handle TemporarilyUnavailable and TransactionTooLargeForCache on _applyPrepareTransaction
- Closed