Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-74281

Only attach minClusterTime read preference for sharding catalog operations

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 7.1.0-rc0, 7.0.0-rc4
    • Affects Version/s: None
    • Component/s: None
    • None
    • Sharding NYC
    • Fully Compatible
    • v7.0
    • Sharding NYC 2023-05-01, Sharding NYC 2023-05-15, Sharding NYC 2023-05-29, Sharding NYC 2023-06-12

      ShardRemote has logic to attach a minClusterTime read preference to any command sent through it to a shard with the "config" shard name. After SERVER-73865, the config server will always use this name even when serving as a user data shard. That ticket changed this logic to only apply for the config and admin dbs, which contain sharding catalog metadata, but ideally we would only apply it when we know we're performing a catalog operation and not need to use the dbName (especially since at least one config db does not hold catalog metadata, "config.system.sessions").

      There are at least two ways we can handle this:

      1. Guarantee we only use ShardRemote for catalog operations.
        1. Then we can always attach minClusterTime read preference.
      2. Attach minClusterTime read preference at a higher level in ShardRemote (or whatever components use it) when we know we're performing a catalog operation.

            Assignee:
            wenqin.ye@mongodb.com Wenqin Ye
            Reporter:
            jack.mulrow@mongodb.com Jack Mulrow
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: