[SERVER-85443] Inline `sharding_ddl_util::getCollectionUUID` in create coordinator Created: 19/Jan/24  Updated: 25/Jan/24

Status: Backlog
Project: Core Server
Component/s: Sharding
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: Pierlauro Sciarelli Assignee: Backlog - Catalog and Routing
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Catalog and Routing
Participants:
Story Points: 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

Generated at Thu Feb 08 06:57:46 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.