summaryrefslogtreecommitdiff
path: root/LICENSE-Community.txt
diff options
context:
space:
mode:
authorHenrik Edin <henrik.edin@mongodb.com>2022-11-04 16:14:31 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2022-11-08 22:05:36 +0000
commitac5d0034debcc646ffe610f8d63302c25a3598b7 (patch)
tree313fa308a250668ca9042fc1454c583cf59e3eda /LICENSE-Community.txt
parent50e767b1dbbd5104959989e056d3bd04b6119748 (diff)
downloadmongo-ac5d0034debcc646ffe610f8d63302c25a3598b7.tar.gz
SERVER-70879 Fix race where multiple threads are turning an index multikey concurrently
Fix race where the writes to the durable catalog are serialized but the second writer is using a stale in-memory state due to the commit handler not being executed yet. This interleaving does not cause a write conflict as the writes are serialized but the second writer overwrote the multikey paths set by the first writer. To handle it we always read the latest state from the durable catalog before performing multikey writes. This guarantees that we always are operating on the latest state. Some care was needed to ensure index offsets remain stable. (cherry picked from commit 74bf9118e38ff4ee63db8bb17146dabe3ef07392)
Diffstat (limited to 'LICENSE-Community.txt')
0 files changed, 0 insertions, 0 deletions