In order to break the cycle of some potential 3-way deadlocks involving index builds, prepared transactions, and step down, we will investigate not acquiring the RSTL for index build cleanup. Index build cleanup does not require synchronization with replica set state transitions. See SERVER-42621 for description of a potential deadlock.
- is related to
-
SERVER-42621 3 way deadlock can happen between hybrid index build, prepared transactions and stepdown thread.
- Closed
-
SERVER-41462 do not lock RSTL for uninterruptible index lock operations
- Closed
- related to
-
SERVER-42869 IndexBuildInterceptor rollback handler access _sideWritesCounter field after interceptor is destroyed
- Closed
-
SERVER-45553 Single phase hybrid index build should not do clean up with RSTL lock held.
- Closed
-
SERVER-43837 remove RSTL unlocking logic from MultiIndexBlock::cleanUpAfterBuild()
- Closed
-
SERVER-44045 allow secondary index builds to start without unlocking the RSTL
- Closed