-
Type:
Bug
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: Index Maintenance, Storage
-
None
-
Fully Compatible
-
ALL
-
Execution Team 2019-07-29
-
17
-
None
-
None
-
None
-
None
-
None
-
None
-
None
The dassert tries to read a record out of the catalog using KVCollectionCatalogEntry::getMetadata() which uses WiredTigerRecordStore::findRecord() and that could return a WriteConflictException when the WTSkipPrepareConflictRetries and skipWriteConflictRetries failpoints are enabled, preventing the WiredTigerRecordStore::findRecord() from retrying. Eventually this bubbles up to the caller as a WriteConflict. The dassert is a sanity check in debug builds to ensure that the in-memory index catalog matches the one on-disk.
Running a command that doesn't expect a WriteConflictException such as the collStats command can return a WriteConflict error back to the user in this case.