Rename across DB should not hold an stale snapshot during commit

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Major - P3
    • 8.3.0-rc0
    • Affects Version/s: 8.3.0-rc0
    • Component/s: Catalog
    • None
    • Catalog and Routing
    • Fully Compatible
    • ALL
    • CAR Team 2026-01-19
    • 200
    • 🟦 Shard Catalog
    • None
    • None
    • None
    • None
    • None
    • None

      Rename collection across DBs is split into two phases:

      1. Data copy from the source collection to a temporary collection on the target DB
      2. Commit by renaming the temporary collection on the target and dropping the source

      Before SERVER-99621 we released all the locks between data copy and commit, which as a side effect releases the snapshot we acquired for the data copy. However since SERVER-99621, we keep holding the DB locks, which prevents this.

       

      The code for the commit is designed to work on the latest state, and invariants if the target collection was dropped after we acquired the snapshot. So we should release the snapshot.

            Assignee:
            Joan Bruguera Micó
            Reporter:
            Joan Bruguera Micó
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: