-
Type:
Bug
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Storage Execution
-
Fully Compatible
-
ALL
-
Storage Execution 2026-08-03
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Currently when the timestamp store is empty, we remove the guard of replicated fast count in oplog truncation. However, the correct logic should be preserving all oplog entries since the metadata checkpoint needs to start from the beginning of the oplog.
auto persistedTs = writeConflictRetry(
opCtx, "computeTruncationBound", NamespaceString::kRsOplogNamespace, [&] {
return replicated_fast_count::ReplicatedFastCountManager::get(
opCtx->getServiceContext())
.findPersistedTimestampStoreTs(opCtx)
.value_or(Timestamp::max()); // Incorrect
});
return std::min(persistedTs, ts);
- is depended on by
-
SERVER-131842 Assert _lastBufferedRid exists unconditionally
-
- Closed
-
- related to
-
SERVER-131791 Fix pinned timestamp check in time-based oplog truncation
-
- Closed
-