Prevent fassert after killing opCtx as part of reconstructing prepared transactions after initial sync

XMLWordPrintableJSON

    • Fully Compatible
    • ALL
    • v7.0, v6.0, v5.0, v4.4
    • Repl 2023-05-29, Repl 2023-06-12, Repl 2023-06-26
    • 105
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Currently, reconstructPreparedTransactions() fasserts that there was no error while applying operations. However, in initial sync, we allow the opCtx to be interrupted while we are calling reconstructPreparedTransactions(). As a result, we may fassert if we kill a session during execution of that function. We should ensure that we do not fassert due to interrupts. This can potentially be done with runWithoutInterruptionExceptAtGlobalShutdown or setKillOpsExempt.

              Assignee:
              Xuerui Fa
              Reporter:
              Xuerui Fa
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: