Collectionless $listClusterCatalog may miss collections being renamed across DBs

    • Type: Bug
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: 9.0.0-rc0
    • Component/s: Catalog
    • None
    • Catalog and Routing
    • ALL
    • 🟦 Shard Catalog
    • None
    • None
    • None
    • None
    • None
    • None

      To list all collections in the cluster, collectionless $listClusterCatalog first gets a list of DBs and then sends individual listCollections commands for each DB.

       

      This means that it doesn't see a consistent state and in particular, like SERVER-118421, $listClusterCatalog may scan the databases in "A" → "B" → "C" order but while it's scanning "B", collection "C.coll" can get renamed to "A.coll". This causes $listClusterCatalog to entirely miss a collection in its output

       

      Run the attached repro FSM in concurrency_replication.

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

              Created:
              Updated: