summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGregory Wlodarek <gregory.wlodarek@mongodb.com>2021-04-06 14:45:58 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2021-04-07 15:02:55 +0000
commit00a9e47df8ebd2c8b224eb3a38fe6ffbfe406268 (patch)
tree1ec386bb0d8803060cd09dc8bc872e4a4ee4e386 /src
parentc2566e29b96559ac5ba4c8616a357c4025a0f843 (diff)
downloadmongo-00a9e47df8ebd2c8b224eb3a38fe6ffbfe406268.tar.gz
SERVER-55479 Invariant that the first table checked in WiredTigerUtil::setTableLogging() is the _mdb_catalog
Diffstat (limited to 'src')
-rw-r--r--src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine_test.cpp1
-rw-r--r--src/mongo/db/storage/wiredtiger/wiredtiger_recovery_unit_test.cpp1
-rw-r--r--src/mongo/db/storage/wiredtiger/wiredtiger_standard_index_test.cpp4
-rw-r--r--src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp4
4 files changed, 10 insertions, 0 deletions
diff --git a/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine_test.cpp b/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine_test.cpp
index ce2b7c15a13..a7b7390756c 100644
--- a/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine_test.cpp
+++ b/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine_test.cpp
@@ -68,6 +68,7 @@ public:
virtual KVEngine* restartEngine() override {
_engine.reset(nullptr);
_engine = makeEngine();
+ _engine->notifyStartupComplete();
return _engine.get();
}
diff --git a/src/mongo/db/storage/wiredtiger/wiredtiger_recovery_unit_test.cpp b/src/mongo/db/storage/wiredtiger/wiredtiger_recovery_unit_test.cpp
index 5c384c2b8ed..2f28df784a2 100644
--- a/src/mongo/db/storage/wiredtiger/wiredtiger_recovery_unit_test.cpp
+++ b/src/mongo/db/storage/wiredtiger/wiredtiger_recovery_unit_test.cpp
@@ -66,6 +66,7 @@ public:
getGlobalServiceContext(),
std::unique_ptr<repl::ReplicationCoordinator>(new repl::ReplicationCoordinatorMock(
getGlobalServiceContext(), repl::ReplSettings())));
+ _engine.notifyStartupComplete();
}
~WiredTigerRecoveryUnitHarnessHelper() {}
diff --git a/src/mongo/db/storage/wiredtiger/wiredtiger_standard_index_test.cpp b/src/mongo/db/storage/wiredtiger/wiredtiger_standard_index_test.cpp
index f3b2f963b53..b050a4a2f88 100644
--- a/src/mongo/db/storage/wiredtiger/wiredtiger_standard_index_test.cpp
+++ b/src/mongo/db/storage/wiredtiger/wiredtiger_standard_index_test.cpp
@@ -62,11 +62,15 @@ public:
_fastClockSource = std::make_unique<SystemClockSource>();
_sessionCache = new WiredTigerSessionCache(_conn, _fastClockSource.get());
+
+ WiredTigerUtil::notifyStartupComplete();
}
~WiredTigerIndexHarnessHelper() final {
delete _sessionCache;
_conn->close(_conn, nullptr);
+
+ WiredTigerUtil::resetTableLoggingInfo();
}
std::unique_ptr<SortedDataInterface> newIdIndexSortedDataInterface() final {
diff --git a/src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp b/src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp
index 2d0b7998e5d..e2173229284 100644
--- a/src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp
+++ b/src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp
@@ -756,6 +756,10 @@ Status WiredTigerUtil::setTableLogging(WT_SESSION* session, const std::string& u
invariant(_tableLoggingInfo.isFirstTable);
invariant(!_tableLoggingInfo.hasPreviouslyIncompleteTableChecks);
+
+ // When repair or a forced modification to the table logging settings isn't running, check that
+ // the first table is the catalog.
+ invariant(uri == "table:_mdb_catalog", str::stream() << "First table checked was: " << uri);
_tableLoggingInfo.isFirstTable = false;
// Check if the first tables logging settings need to be modified.