Route ChangeStreamUpdateLookupStage through SingleDocumentLookupExecutor (Aggregation-only)

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Fixed
    • Priority: Major - P3
    • 9.0.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Query Execution
    • Fully Compatible
    • QE 2026-06-22
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Summary

      Wire ChangeStreamUpdateLookupStage to perform its lookup through a SingleDocumentLookupExecutor whose chain is Aggregation-only. Behaviour-preserving; no feature flag. This puts the stage on the executor seam so that Express/SBE primaries can later be slotted in behind the feature flag.

      Scope

      • ChangeStreamUpdateLookupStage constructs and drives a PrimaryWithFallback chain whose only member is the AggregationSingleDocumentLookupExecutor (no primary strategy yet).
      • Factory wiring in change_stream_add_post_image_stage_fn.cpp.

      Files

      • src/mongo/db/exec/agg/change_stream_update_lookup_stage.h / .cpp
      • src/mongo/db/exec/agg/change_stream_add_post_image_stage_fn.cpp

      Acceptance criteria

      • Existing change_streams and passthrough suites stay green (output unchanged).
      • Depends on the stage-split (SERVER-128407), interface (SERVER-128408), and Aggregation-fallback (SERVER-128409) tickets.

            Assignee:
            Denis Grebennicov
            Reporter:
            Denis Grebennicov
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: