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

Inline `sharding_ddl_util::getCollectionUUID` in create coordinator

    XMLWordPrintableJSON

Details

    • Icon: Improvement Improvement
    • Resolution: Unresolved
    • Icon: Major - P3 Major - P3
    • None
    • None
    • Sharding
    • None
    • Catalog and Routing
    • 1

    Description

      The sharding_ddl_util namespace is publicly offering a getCollectionUUID function that is simply performing a looking in the local catalog. This is misleading because the lookup is local despite the function being in the sharding DDL utils.

      At the time of writing there are several usages of that helper in the create collection coordinator and only one usage in the collmod coordinator:

      $ git grep 'sharding_ddl_util::getCollectionUUID'
      src/mongo/db/s/collmod_coordinator.cpp:   sharding_ddl_util::getCollectionUUID(opCtx, _collInfo->nsForTargeting);
      src/mongo/db/s/create_collection_coordinator.cpp:   return *sharding_ddl_util::getCollectionUUID(opCtx, nss);
      src/mongo/db/s/create_collection_coordinator.cpp:   auto uuid = sharding_ddl_util::getCollectionUUID(opCtx, nss());
      src/mongo/db/s/create_collection_coordinator.cpp:   auto uuid = sharding_ddl_util::getCollectionUUID(opCtx, nss());
      src/mongo/db/s/create_collection_coordinator.cpp:   _uuid = sharding_ddl_util::getCollectionUUID(opCtx, nss());
      src/mongo/db/s/create_collection_coordinator.cpp:   _uuid = sharding_ddl_util::getCollectionUUID(opCtx, nss());
      src/mongo/db/s/create_collection_coordinator.cpp:   _uuid = sharding_ddl_util::getCollectionUUID(opCtx, nss());
      src/mongo/db/s/create_collection_coordinator.cpp:   _uuid = sharding_ddl_util::getCollectionUUID(opCtx, nss());
      

      Purpose of this ticket is to:

      • Move the function in an anonymous namespace in the create coordinator (and it would be more correct to rename it to something like getLocalCollectionUUID)
      • Replace the only usage in the collmod coordinator with an inline catalog lookup

      Attachments

        Activity

          People

            backlog-server-catalog-and-routing Backlog - Catalog and Routing
            pierlauro.sciarelli@mongodb.com Pierlauro Sciarelli
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated: