summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/rs_rollback.h
diff options
context:
space:
mode:
authorBenety Goh <benety@mongodb.com>2017-07-18 06:55:52 -0400
committerBenety Goh <benety@mongodb.com>2017-07-21 11:51:57 -0400
commit056e90b4fb8d6d50c011cbeb655bed3fdc0d9b0f (patch)
treea6bcc45d8974e8d6b3efc0fce9bfdce788ba834a /src/mongo/db/repl/rs_rollback.h
parent301bfb35d7008f60586aeed00dd67087ad4254c0 (diff)
downloadmongo-056e90b4fb8d6d50c011cbeb655bed3fdc0d9b0f.tar.gz
SERVER-30150 DropPendingCollectionReaper::rollBackDropPendingCollection() rolls back at most one drop-pending collection.
Since it is now possible for multiple drop-pending collections (in different databases) to be linked to the same drop optime, this function requires the fully qualified original collection optime to be able to locate the correct entry in the drop pending collection multimap.
Diffstat (limited to 'src/mongo/db/repl/rs_rollback.h')
-rw-r--r--src/mongo/db/repl/rs_rollback.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mongo/db/repl/rs_rollback.h b/src/mongo/db/repl/rs_rollback.h
index a6ea1887f21..3a43706f4d2 100644
--- a/src/mongo/db/repl/rs_rollback.h
+++ b/src/mongo/db/repl/rs_rollback.h
@@ -30,6 +30,7 @@
#include "mongo/base/status.h"
#include "mongo/db/jsobj.h"
+#include "mongo/db/namespace_string.h"
#include "mongo/db/record_id.h"
#include "mongo/db/repl/optime.h"
#include "mongo/stdx/functional.h"
@@ -120,7 +121,6 @@
namespace mongo {
class DBClientConnection;
-class NamespaceString;
class OperationContext;
namespace repl {
@@ -249,7 +249,7 @@ struct FixUpInfo {
// When collections are dropped, they are added to a list of drop-pending collections. We keep
// the OpTime and the namespace of the collection because the DropPendingCollectionReaper
// does not store the original name or UUID of the collection.
- stdx::unordered_map<UUID, std::pair<OpTime, std::string>, UUID::Hash>
+ stdx::unordered_map<UUID, std::pair<OpTime, NamespaceString>, UUID::Hash>
collectionsToRollBackPendingDrop;
// True if rollback requires re-fetching documents in the session transaction table. If true,