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

Use pending namespaces map to discover catalogId when openCollection is called without timestamp

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 6.3.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None
    • Fully Compatible
    • Execution Team 2022-12-12, Execution Team 2022-11-28

      When openCollection is called without a timestamp, the regular catalogId mapping may be stale if there is a concurrent DDL commit in progress, such as a collection rename.

      We can instead use the pending namespace map and extract the catalogId from the collection instance that we are in progress of committing. 

      If the pending namespace is a drop and we don't have a collection to get the catalogId from we can fallback to use the regular mapping. If we find an entry using it we know that our snapshot cannot see the drop.

            Assignee:
            will.buerger@mongodb.com Will Buerger
            Reporter:
            henrik.edin@mongodb.com Henrik Edin
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: