Chunk migration op observer is unable to get opTime of findAndModify

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Major - P3
    • 9.0.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Storage Execution
    • Fully Compatible
    • ALL
    • Storage Execution 2026-04-27
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Chunk migration relies on retryable write history recorded via session migration, but this history is currently missing on the recipient for single-operation batched retryable writes because their opTime is only assigned at commit and is therefore not visible on the migration chunk cloner op observer’s per-op onUpdate path.

      Multi-op batched writes are handled correctly, but single-op batches are skipped by early returning when  batchOpTimes.empty() because single batched writes record their opTime opAccumulator->opTime rather than in batchOpTimes.

      The fix is to relax this guard so we only return early when both batchOpTimes and opTime.writeOpTime are empty, and pass {{opAccumulator->opTime }}for single-op batches so they are correctly added to session migration state.

            Assignee:
            Shin Yee Tan
            Reporter:
            Shin Yee Tan
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: