-
Type:
Task
-
Resolution: Unresolved
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: Concurrency
-
None
-
DB Integration & Observability
-
QI 2025-02-17
-
200
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
- Description
`CheckMultikeyConsistencyInBackground` failed in BF-46711 (`disagg_concurrency_replication_high_yielding`): the workload under test intentionally drops and re-creates its pool collections, and one such drop raced the hook's doc-sampling read.
In `assertWildcardMultikeyConsistent` (`jstests/hooks/run_check_multikey_consistency.js:144`), the `findOne({}, {_id: 0})` used to sample a document only tolerated `NamespaceNotFound`. A drop that lands *while the read is running* kills the plan executor, so the server returns `QueryPlanKilled` (code 175) instead. That error was re-thrown, the hook exited, and resmoke promoted it to a `ServerFailure` (`check_multikey_consistency_background.py:125`).
This change skips the collection on `QueryPlanKilled` as well, consistent with how the rest of the hook already treats transient drop races (`readCatalogIndexesAtClusterTime` / `readWildcardMultikeyPaths` return `undefined` on any error and the caller skips). This is a test-only fix; server behavior is correct.
Related: BF-46711. Hook introduced in SERVER-128070.
- is related to
-
SERVER-128070 Explore introducing a random sampling hook for timestamp consistency of multikeyness
-
- Closed
-