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

Support sharding for collectionUUID parameter of aggregate command

    XMLWordPrintable

Details

    • Task
    • Status: Closed
    • Major - P3
    • Resolution: Fixed
    • None
    • 5.3.0
    • None
    • None
    • Fully Compatible
    • Replication 2022-02-07, Repl 2022-02-21

    Description

      Currently the collectionUUID option for the aggregate command is disallowed on mongos.

       

      Context change:

      In the case of sharded collection, documents can be spanned to multiple shards, so the aggregation request can be directed to any subset of the shards, and if the targeted subset doesn't include the primaryShard of the database that may result in not finding the collection corresponding to the given collectionUUID.

      To solve this problem we came up with two solutions:
      1- Send dummy request to the primaryShard if the targeted shard subset doesn't include it and we didn't find the collection corresponding to the given collectionUUID.

      2- Only allow collectionUUID parameter for commands that it must hit the primaryShard.

       

      We have decided to go with the second solution for sharded aggregation command, so we are going to allow the collectionUUID parameter for only $indexStats and $collStats aggregation pipelines as replicator only needs these two pipelines. 
       

      Attachments

        Issue Links

          Activity

            People

              m.maher@mongodb.com Moustafa Maher
              gregory.noma@mongodb.com Gregory Noma
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: