CatalogCache::_mutex -> ShardServerCatalogCacheLoader::_mutex order:
CatalogCache::_scheduleDatabaseRefresh has catalog cache mutex and calls getDatabase:
https://github.com/mongodb/mongo/blob/2393ed14199eddebe25e56bc0a8fe1d47f2297cf/src/mongo/s/catalog_cache.cpp#L532
which will take the ShardServerCCL _mutex at the beginning of the call.
ShardServerCCL::_mutex -> CatalogCache::_mutex order:
Inside the async task lamda we take the ShardServerCCL mutex then tries to run a callback:
https://github.com/mongodb/mongo/blob/2393ed14199eddebe25e56bc0a8fe1d47f2297cf/src/mongo/db/s/shard_server_catalog_cache_loader.cpp#L460
And the callback tries to get the CatalogCache::_mutex: