Allow tagging Operation FCV to be propagated or not across shards

XMLWordPrintableJSON

    • Catalog and Routing
    • Fully Compatible
    • CAR Team 2025-10-27
    • 🟩 Routing and Topology
    • None
    • None
    • None
    • None
    • None
    • None

      SERVER-99545 introduced Operation FCV (OFCV, VersionContext), an FCV snapshot to an operation.

      As initially introduced, an OFCV was always owned by a resilient distributed operation (ShardingDDLCoordinator), and was propagated across shards (SERVER-99557 / SERVER-99558).

       

      Now that we are extending OFCV to replica set operations (a local, non-persisted OperationContext), we must make sure not propagate it across shards. The issue is that if we allow a network command to carry an OFCV, and the local operations is killed (or wiped out on a crash), there is no longer any state for setFCV to serialize/draining that network command before proceeding to the metadata transformation/cleanup phase.

       

      Add an in-memory flag to VersionContext indicating whether it's safe to propagate it across shards. This flag is disabled by default, and only set if the VersionContext originates from ShardingDDLCoordinator.

            Assignee:
            Joan Bruguera Micó
            Reporter:
            Joan Bruguera Micó
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: