diff options
author | Dianna Hohensee <dianna.hohensee@mongodb.com> | 2020-11-05 17:20:31 -0500 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2020-11-12 17:54:28 +0000 |
commit | ccd024d9fb5c0587e33a3a3321e7f9a0430d0190 (patch) | |
tree | e4035ba5b8f90bc300b7645d8d1ae4cf3df3c401 /src/mongo/db/storage/storage_engine_impl.cpp | |
parent | c1ad4eab08f4679ca5071d76cfa845a9652881fe (diff) | |
download | mongo-ccd024d9fb5c0587e33a3a3321e7f9a0430d0190.tar.gz |
SERVER-52562 Enable two-phase drop for standalone mode; allow Lock-Free reads for standalone mode.
Diffstat (limited to 'src/mongo/db/storage/storage_engine_impl.cpp')
-rw-r--r-- | src/mongo/db/storage/storage_engine_impl.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/mongo/db/storage/storage_engine_impl.cpp b/src/mongo/db/storage/storage_engine_impl.cpp index 5c9f90bc56f..9a1ea732079 100644 --- a/src/mongo/db/storage/storage_engine_impl.cpp +++ b/src/mongo/db/storage/storage_engine_impl.cpp @@ -1048,13 +1048,9 @@ void StorageEngineImpl::checkpoint() { } void StorageEngineImpl::_onMinOfCheckpointAndOldestTimestampChanged(const Timestamp& timestamp) { - if (timestamp.isNull()) { - return; - } - // No drop-pending idents present if getEarliestDropTimestamp() returns boost::none. if (auto earliestDropTimestamp = _dropPendingIdentReaper.getEarliestDropTimestamp()) { - if (timestamp > *earliestDropTimestamp) { + if (timestamp >= *earliestDropTimestamp) { LOGV2(22260, "Removing drop-pending idents with drop timestamps before timestamp", "timestamp"_attr = timestamp); @@ -1145,6 +1141,10 @@ void StorageEngineImpl::TimestampMonitor::startup() { _currentTimestamps.minOfCheckpointAndOldest != minOfCheckpointAndOldest) { listener->notify(minOfCheckpointAndOldest); + } else if (stable == Timestamp::min()) { + // Special case notification of all listeners when writes do not have + // timestamps. This handles standalone mode. + listener->notify(Timestamp::min()); } } } |