|
The section should cover the following:
- Non-retryable internal transactions
- Retryable internal transactions
- How retryablity works
- The “stmtId”, “preImageOpTime”, “postImageOpTime”, “needsRetryImage” fields in the inner oplog entries inside each applyOps oplog entry.
- How each retryable write statement generates only one operation entry with its stmtId; any other operation entries have stmtId=-1.
- How each internal session can only have one retryable findAndModify.
refreshFromStorageIfNeeded() and RetryableTransactionParticipantCatalog.
- How concurrent retries are prevented (i.e. RetryableTransactionInProgress).
- Session migration during chunk migration and resharding
- Retryability contract.
- How retryable internal transaction oplog entries are converted to retryable write oplog entries.
|