Drop may be skipped if it interleaves with viewless timeseries upgrade/downgrade (replica set)

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: 8.3.0-rc0
    • Component/s: None
    • None
    • Catalog and Routing
    • ALL
    • 馃煢 Shard Catalog
    • None
    • None
    • None
    • None
    • None
    • None

      Currently dropping a timeseries collection in a replica set does not hold locks throughout but rather it first does a catalog lookup without holding locks, and then later it drops and re-acquires the locks when aborting index builds.

      This can result in a timeseries collection fully or partially skipping the drop, For example:

      • Drop may first see that a timeseries collection is viewful.
      • Immediately afterwards the collection is upgraded to a viewless "myts" collection.
      • Drop will find neither the "system.buckets.myts" collection nor "myts" view so it will conclude that the collection is already dropped and there is nothing to do.

      In the case of an upgrade, the drop can be fully skipped. In the case of a downgrade, the drop can be partially skipped (drop buckets collection but not view).

      A reproducer is attached.

        1. repro-SERVER-116090.patch
          4 kB
          Joan Bruguera Mic贸

            Assignee:
            Unassigned
            Reporter:
            Joan Bruguera Mic贸
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: