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

Create collection coordinator may refresh 3 times the DB Primary shard

    • Type: Icon: Improvement Improvement
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 8.1.0-rc0, 8.0.0-rc11
    • Affects Version/s: 8.0.0-rc0
    • Component/s: None
    • None
    • Catalog and Routing
    • Fully Compatible
    • v8.0
    • CAR Team 2024-06-24, CAR Team 2024-07-08
    • 0

      Upon completion of the create collection coordinator, we perform a best effort refresh on all shards involved in the operation to ensure the correct filtering information is installed, rather than just a cleared information.

      The detailed implementation for performing this best effort refresh involves creating an array of all shards that own chunks (_doc.getShardIds), the DB primary shard (ShardingState::get(opCtx)->shardId()), and the data shard (_doc.getOriginalDataShard()).

      We append the DB primary shard and the data shard to the best effort refresh because we want to ensure the correct filtering information is installed on them, regardless of whether they own chunks or not.

      However, if the DB primary shard is the data shard and it also owns chunks, it will receive 3 refreshes.

      The objective of this task is to optimize this behavior by ensuring that the DB primary shard is refreshed at most once.

            Assignee:
            pol.pinol@mongodb.com Pol Pinol
            Reporter:
            pol.pinol@mongodb.com Pol Pinol
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: