Prevent router from choosing merging node based on stale routing table indefinitely

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Fixed
    • Priority: Major - P3
    • 8.0.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Fully Compatible
    • CAR Team 2023-12-11, CAR Team 2023-12-25, CAR Team 2024-01-08, CAR Team 2024-01-22, CAR Team 2024-02-05
    • 51
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      On sharded clusters, some aggregation stages such as $lookup, $graphLookup, $out and $merge may choose to split the pipeline and designate a merging shard. The router chooses the merging shard according to its cached routing table (for the inner collection in case of $lookup/$graphLookup, and the output collection in the case of $out/$merge). This routing table can potentially be stale – if it is, the query plan will perform sub-optimally, but results will be correct.
      This ticket is to prevent scenarios where a router stays stale indefinitely and keeps choosing sub-optimal plans.

            Assignee:
            Jordi Serra Torrens
            Reporter:
            Jordi Serra Torrens
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: