[SERVER-71222] CollectionCatalog::openCollection should support lookup by NamespaceStringOrUUID Created: 09/Nov/22  Updated: 29/Oct/23  Resolved: 16/Feb/23

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 7.0.0-rc0

Type: Task Priority: Major - P3
Reporter: Matthew Saltz (Inactive) Assignee: Gregory Wlodarek
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-73679 Refactor dbCheck to use PIT catalog l... Closed
is depended on by SERVER-73680 Refactor dbHash to use PIT catalog lo... Closed
Assigned Teams:
Storage Execution
Backwards Compatibility: Fully Compatible
Sprint: Execution Team 2023-02-20
Participants:

 Description   

Currently CollectionCatalog::openCollection only supports lookup by NamespaceString. However, in some cases, the user may provide a UUID rather than a namespace. In these cases, the UUID needs to be resolved to a namespace to use openCollection - but the CollectionCatalog does not support a way to resolve UUIDs at a time in the past. This means that if the user wants to read a collection by UUID for a UUID that existed in the past, but no longer exists in the latest version of the catalog, they cannot successfully find the NamespaceString for that UUID, and so cannot call openCollection. But the whole point of openCollection is to be able to read collections in the past! So we need to change openCollection to support lookup by NamespaceStringOrUUID.

Alternatively, we could add a variant of CollectionCatalog::resolveNamespaceStringOrUUID that takes in a timestamp, and then we could call that function to get a NamespaceString and then pass that to the existing version of openCollection



 Comments   
Comment by Githook User [ 16/Feb/23 ]

Author:

{'name': 'Gregory Wlodarek', 'email': 'gregory.wlodarek@mongodb.com', 'username': 'GWlodarek'}

Message: SERVER-71222 CollectionCatalog supports point-in-time catalog lookups by UUID
Branch: master
https://github.com/mongodb/mongo/commit/c80e2a2a35ef841404af18cc2c4b754423edaa41

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