-
Type:
Task
-
Resolution: Duplicate
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Storage
-
None
-
Execution Team 2021-12-13
-
0
The AutoGetDbForDbCheck RAII class first attempts to acquire a lock on the "local" database in MODE_IX and then attempts to acquire a lock on the database to check in MODE_S. This is incompatible with the lock ordering that other database operations use when calling repl::logOp() because other threads will first attempt to acquire a lock on the database and then attempt to acquire a lock on the "local" database.
AutoGetDbForDbCheck::AutoGetDbForDbCheck(OperationContext* opCtx, const NamespaceString& nss) : localLock(opCtx, "local"_sd, MODE_IX), agd(opCtx, nss.db(), MODE_S) {}
- is related to
-
SERVER-31070 make dbCheck a test command
-
- Closed
-
-
SERVER-61748 dbCheck should not hold a strong database lock during batches
-
- Closed
-