-
Type: Bug
-
Resolution: Done
-
Priority: Major - P3
-
None
-
Affects Version/s: 2.4.0-rc0
-
Component/s: Admin
-
None
-
Storage Execution
-
ALL
Here is a quick analysis of the locks hanging off serverStatus:
- recordStats requires a read lock (Client::ReadContext) for each db
- locks requires "DBLocksMap::ref r(dblocks);" (not write lock related)
- cursors requires client cursor lock
- network requires local lock for network counters
- repl requires lock on "ReplSetImpl"
- master/slave: local db, and possibly queries all replication sources (other server oplog entries – first/last entry).
The biggest issue is the recordStats since that requires a read lock for each db.
- is duplicated by
-
SERVER-16146 dropDatabase is slow and returns success immediately though it then blocks progress while running
- Closed