Initial sync may fail with IndexOptionsConflict when applying stale startIndexBuild oplog entry

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Major - P3
    • 7.0.0-rc0, 6.0.17
    • Affects Version/s: None
    • Component/s: None
    • None
    • Storage Execution
    • Fully Compatible
    • ALL
    • v6.0
    • Execution Team 2023-03-06
    • 2
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None

      Initial sync may fail with IndexOptionsConflict when applying stale startIndexBuild oplog entry if the stale (i.e. dropped) index has the same spec as a more up-to-date index under a different name.

      More specifically, let's say the primary creates {a: 1} with name "a1", drops it, then re-creates the same index with name "a2", and initial sync clones "a2" but later needs to re-apply createIndex of "a1". In this case, initial sync would fail with IndexOptionsConflict when applying "a1".

      SERVER-47164 added code to handle name conflicts during initial sync but it doesn't handle spec conflicts (under different index name).

            Assignee:
            Dianna Hohensee (Inactive)
            Reporter:
            Lingzhi Deng
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: