Investigate scope of _oplogPinnedByBackupMutex in WiredTigerKVEngine::beginNonBlockingBackupCursor()

XMLWordPrintableJSON

    • Type: Improvement
    • Resolution: Gone away
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Storage Execution
    • Execution Team 2023-05-01, Execution Team 2023-05-15
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      The _oplogPinnedByBackupMutex is locked and held for the majority of WiredTigerKVEngine::beginNonBlockingBackup()

      The mutex is locked before the trying to acquire the PBWM lock. We've seen scenarios where minor changes to the oplog applier code path can introduce a deadlock where the oplog applier holds the PBWM lock while trying to check the oldest pinned timestamp.

      In general, we should try to limit the scope of this mutex, and evaluate if the scope can be reduced to improve code safety.

              Assignee:
              Jordi Olivares Provencio
              Reporter:
              Haley Connelly
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: