Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-81373

Refactor DeferredDropRecordStore to use onCommit handlers

    • Type: Icon: Improvement Improvement
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Labels:
    • Storage Execution

      DeferredDropRecordStore currently submits the ident to the ident reaper whenever it gets destroyed with the minimum timestamp.

      Ident drops will return EBUSY errors if the data hasn't been written to the RecordStore before dropping it since the ident is technically in-use and/or dirty according to WiredTiger.

      We also cannot use a checkpoint iteration version as introduced by SERVER-80974 since in multi-document transactions the iteration will be wrong since it's only valid if the operation commits. The ident in this case would be part of the multi-document transaction but the drop would be attempted before the commit is performed.

      Ideally we should detect whether we are part of a transaction and perform the drop once the operation commits.

            backlog-server-execution [DO NOT USE] Backlog - Storage Execution Team
            jordi.olivares-provencio@mongodb.com Jordi Olivares Provencio
            0 Vote for this issue
            4 Start watching this issue