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

MultiIndexBlock::init() does not clear _indexes upon a WCE

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.4.0-rc14, 4.7.0
    • Affects Version/s: 4.5.1, 4.4.0-rc11
    • Component/s: Index Maintenance
    • Labels:
      None
    • Fully Compatible
    • ALL
    • v4.4
    • Execution Team 2020-07-27
    • 30

      There was a build failure where this invariant failed.

      This happened because the IndexBuildsManager::setUpIndexBuild() function will retry calling MultiIndexBlock::init() in a write conflict retry loop.
      But because the MultiIndexBlock::init() function does not clean up its state on a WCE, the second attempt will invariant. Adding a onRollback() hook to clear _indexes should do the trick.

            Assignee:
            gregory.wlodarek@mongodb.com Gregory Wlodarek
            Reporter:
            gregory.wlodarek@mongodb.com Gregory Wlodarek
            Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: