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

Primary and secondaries can disagree on indexBuildsCoordinator worker thread availability

    • Type: Icon: Bug Bug
    • Resolution: Gone away
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Storage
    • None
    • Storage Execution
    • ALL

      Currently Cloner::copyIndexes, on primary builds indexes w/o using indexBuildsCoordinator thread pool, but generates start and commit indexBuild oplog entry. This can lead to primary and secondaries disagreeing on indexBuildsCoordinator worker thread availability. consider a case, its a 2 node replica set and thread pool size is 1 and if we get oplog sequence some like below.

      1) startIndexBuild for index x_1 on foo.bar ==> started as part of Cloner::copyIndexes,
      2) startIndexBuild for index y_1 on some.random ==> started by user using createIndexes command.
      3) commitIndexBuild for index x_1
      4) commitIndexBuild for index y_1

            Assignee:
            backlog-server-execution [DO NOT USE] Backlog - Storage Execution Team
            Reporter:
            suganthi.mani@mongodb.com Suganthi Mani
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: