Details
-
Bug
-
Resolution: Done
-
Major - P3
-
None
-
3.2.0-rc1
-
Replication
-
Fully Compatible
-
ALL
Description
There's a potential deadlock with the global lock and the replication lock.
dbEval grabs the Global lock first:
https://github.com/mongodb/mongo/blob/master/src/mongo/db/dbeval.cpp#L185
then the replication lock in the writeCmd called from extractWriteConcern:
https://github.com/mongodb/mongo/blob/master/src/mongo/db/repl/replication_coordinator_impl.cpp#L2604
replSetInitiate grabs the replication lock first:
https://github.com/mongodb/mongo/blob/master/src/mongo/db/repl/replication_coordinator_impl.cpp#L2094
then the global lock around here:
https://github.com/mongodb/mongo/blob/master/src/mongo/db/db_raii.cpp#L50
Attachments
Issue Links
- is related to
-
SERVER-23698 Remove ability to run replSetInitiate if not started as a replica set node
-
- Closed
-