Introduce MongoProcessInterface::getCollectionInfoFromPrimary

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Major - P3
    • 9.0.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Catalog and Routing
    • CAR Team 2026-04-13, CAR Team 2026-04-27
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Replace fetchCollectionUUIDFromPrimary with a new getCollectionInfoFromPrimary method across all MongoProcessInterface implementations. The new method returns a full ListCollectionsReplyItem instead of just a UUID, enabling richer collection metadata retrieval in a single round trip. It also supports lookup by NamespaceStringOrUUID (not just by namespace).

      Key changes:

      • Add getCollectionInfoFromPrimary to MongoProcessInterface, CommonMongodProcessInterface, ReplicaSetNodeProcessInterface, ShardServerProcessInterface, and stub/mongos interfaces.
      • Refactor OutStage to use the new method: extract retrieveTemporaryCollectionUUID() and checkTemporaryCollectionUUIDNotChanged() for clearer UUID tracking and validation during $out.
      • The UUID-based lookup enables detecting renames (not just drops) of the temporary collection, with a specific error for timeseries FCV transitions.
      • Remove the TODO SERVER-111600 conditional around UUID fetching (now always fetched after create).
      • Extend ListCollectionsOpts to support an additional filter field.

      This is needed for SERVER-112816 in which we will make $out resilient to concurrent timeseries upgrade/downgrade.

            Assignee:
            Tommaso Tocci
            Reporter:
            Tommaso Tocci
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: