Cleanup interaction of write concerns and transactions

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Fixed
    • Priority: Major - P3
    • 3.7.4
    • Affects Version/s: None
    • Component/s: Replication
    • None
    • Fully Compatible
    • Repl 2018-03-26
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Due to SERVER-33223, a global WriteUnitOfWork gets established in unstashTransactionResources() if snapshot read concern is specified. This WUOW will commit after running runCommandImpl(). However, waitForWaitConcern happens inside runCommandImpl() and will hit the invariant inside a WUOW.

      We need to wait for write concern after committing the WUOW for commitTransaction and abortTransaction commands and disable or ignore write concerns for writes in a transaction.

              Assignee:
              Siyuan Zhou
              Reporter:
              Siyuan Zhou
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: