Find by UUID must not return NamespaceNotFound without taking any database lock

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Major - P3
    • 4.1.6
    • Affects Version/s: 4.0.2, 4.1.3
    • Component/s: Storage
    • None
    • Fully Compatible
    • ALL
    • Storage NYC 2018-11-05, Storage NYC 2018-11-19
    • 0
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None

      A find by UUID can return NamespaceNotFound without taking any database lock. This allows a reader to see intermediate state from an operation that has the database locked in X mode and is performing catalog operations that may be rolled back. This is problematic for the rollbackViaRefetch algorithm, where a NamespaceNotFound error is treated as a promise that the collection will be dropped in a future oplog entry. This can lead to inconsistent data between replica set members.

            Assignee:
            Eric Milkie
            Reporter:
            Tess Avitabile (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: