diff options
author | Gregory Wlodarek <gregory.wlodarek@mongodb.com> | 2023-02-07 22:49:42 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2023-02-10 21:48:57 +0000 |
commit | 8ee430d8177230926497240b9c3340af9b3d86f2 (patch) | |
tree | 832639a48708ef9681f7a7756af1caf6d448c1b1 | |
parent | e31f1cca6073356a9463f6f0483a4f34c0f35e1e (diff) | |
download | mongo-8ee430d8177230926497240b9c3340af9b3d86f2.tar.gz |
SERVER-73706 Save WTRecordStoreUassertOutOfOrder fail point state to prevent concurrency bugs in testing
(cherry picked from commit 237c050c840b906a8d4b4cd48e7e71e219f72df4)
-rw-r--r-- | src/mongo/db/storage/wiredtiger/wiredtiger_record_store.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/mongo/db/storage/wiredtiger/wiredtiger_record_store.cpp b/src/mongo/db/storage/wiredtiger/wiredtiger_record_store.cpp index ea27368bbab..c6539ce372b 100644 --- a/src/mongo/db/storage/wiredtiger/wiredtiger_record_store.cpp +++ b/src/mongo/db/storage/wiredtiger/wiredtiger_record_store.cpp @@ -2069,9 +2069,9 @@ boost::optional<Record> WiredTigerRecordStoreCursorBase::next() { return {}; } - if ((_forward && _lastReturnedId >= id) || - MONGO_unlikely(WTRecordStoreUassertOutOfOrder.shouldFail())) { - if (!WTRecordStoreUassertOutOfOrder.shouldFail()) { + const bool failWithOutOfOrderForTest = WTRecordStoreUassertOutOfOrder.shouldFail(); + if ((_forward && _lastReturnedId >= id) || MONGO_unlikely(failWithOutOfOrderForTest)) { + if (!failWithOutOfOrderForTest) { // Crash when testing diagnostics are enabled and not explicitly uasserting on // out-of-order keys. invariant(!TestingProctor::instance().isEnabled(), "cursor returned out-of-order keys"); |