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

Handle missing index idents during standalone startup recovery after unclean shutdown

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 6.1.0-rc0, 5.0.18, 6.0.7, 4.4.27
    • Affects Version/s: None
    • Component/s: None
    • Labels:
    • Fully Compatible
    • ALL
    • v6.0, v5.0, v4.4
    • Execution Team 2022-05-30, Execution Team 2022-06-13

      We may fail to start up in standalone mode after an unclean shutdown with unfinished index builds. This scenario specifically:

      • Replica set node crashes during an index build
      • During startup recovery as a replica set node, we drop the index table to rebuild the index, but the node crashes again. This may leave a state with an index in the catalog but a missing index table.
      • When starting the node in standalone mode, the following error occurs:
      {"t":{"$date":"2022-01-19T14:30:53.262+00:00"},"s":"F",  "c":"-",        "id":23095,   "ctx":"initandlisten","msg":"Fatal assertion","attr":{"msgid":28579,"error":"UnsupportedFormat: Unable to find metadata for table:index-0-5696206731032773165 Index: ... - version either too old or too new for this mongod.","file":"src/mongo/db/storage/wiredtiger/wiredtiger_index.cpp","line":526}}

      Currently, the only known remediation is "oplog surgery".

      We need to ensure that unfinished indexes in standalone mode do not attempt to open the underlying table, and additionally ensure they can be dropped by the user in standalone mode.

            gregory.noma@mongodb.com Gregory Noma
            louis.williams@mongodb.com Louis Williams
            0 Vote for this issue
            14 Start watching this issue