Remove unnecessary cursor reset in SizeCountCheckpointOplogTailer

XMLWordPrintableJSON

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

      In SizeCountCheckpointOplogTailer, we intentionally keep the same oplog cursor alive while the tailer continues to make progress, to avoid the cost of recreating the WiredTiger cursor.

      As a compromise until further investigation, we reset the cursor after an iteration where no progress is mades, allowing the underlying dhandle session_ref to be released during idle periods as best-effort mitigation for WT-17075,

      Investigation conclusion:
      Resetting the cursor isn't necessary. The tailer holds a single cursor on the oplog itself, a special and highly active collection, and runs in the primary-side checkpointing path where operations requiring exclusive access are not expected to contend with it in normal operation. So the practical risk appears very low, and the code can be simplified to avoid resetting the cursor during normal idle periods.

            Assignee:
            Unassigned
            Reporter:
            Haley Connelly
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: