Because we upgrade all IX locks to X locks on the "admin" database, two-phase index builds on secondaries that are waiting to commit or abort, will deadlock waiting for a replicated "commitIndexBuild" or "abortIndexBuild" oplog entry. These replicated commands take a database IS lock before they are applied, and will be unable to complete, preventing the index build from completing, but also stalling replication.
The simplest solution should be to yield locks before calling "waitForConditionOrInterrupt".
- is duplicated by
-
SERVER-43709 Enable backup_restore.js when two phase index builds are enabled
- Closed