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

IndexBuildBlock::fail() should grab a lock

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.0.4, 4.1.5
    • Affects Version/s: None
    • Component/s: Storage
    • Labels:
      None
    • Fully Compatible
    • ALL
    • v4.0
    • Storage NYC 2018-10-08, Storage NYC 2018-10-22
    • 1

      During the initial sync there can be multiple indices build in parallel in the same time. If for some reason all builders fail at the same time (e.g. a shutdown is initiated) then the fail() method tries to clean up the IndexCatalog.

      However, the IndexCatalog access is not multi thread safe so all kind of things can go bad with concurrent multiple executions of the fail() method.

            Assignee:
            gregory.wlodarek@mongodb.com Gregory Wlodarek
            Reporter:
            martin.neupauer@mongodb.com Martin Neupauer
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: