summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/rollback_impl.h
diff options
context:
space:
mode:
authorBenety Goh <benety@mongodb.com>2019-01-09 19:06:08 -0500
committerBenety Goh <benety@mongodb.com>2019-01-09 19:06:08 -0500
commit8e5ec90e11d30d476f510929dfeeb2e7d461383e (patch)
tree0a2d0e9e0db4967e61c4498b3d321f047393ddec /src/mongo/db/repl/rollback_impl.h
parent26b05ba269a9313e2fa416b4f7de9429087b767a (diff)
downloadmongo-8e5ec90e11d30d476f510929dfeeb2e7d461383e.tar.gz
SERVER-38800 rollback fixes collection counts using o2 fields of drop and rename oplog entries
Diffstat (limited to 'src/mongo/db/repl/rollback_impl.h')
-rw-r--r--src/mongo/db/repl/rollback_impl.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mongo/db/repl/rollback_impl.h b/src/mongo/db/repl/rollback_impl.h
index 445b1c17a06..61c8e427af8 100644
--- a/src/mongo/db/repl/rollback_impl.h
+++ b/src/mongo/db/repl/rollback_impl.h
@@ -461,6 +461,13 @@ private:
// and rolling back creates means that the UUID does not exist post rollback.
stdx::unordered_map<UUID, long long, UUID::Hash> _countDiffs; // (N)
+ // Maintains counts and namespaces of drop-pending collections.
+ using PendingDropInfo = struct {
+ long long count = 0;
+ NamespaceString nss;
+ };
+ stdx::unordered_map<UUID, PendingDropInfo, UUID::Hash> _pendingDrops; // (N)
+
// Maintains the count of the record store pointed to by the UUID after we recover from the
// oplog.
stdx::unordered_map<UUID, long long, UUID::Hash> _newCounts; // (N)