summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/rs_rollback.cpp
diff options
context:
space:
mode:
authorBenety Goh <benety@mongodb.com>2018-04-04 20:18:59 -0400
committerBenety Goh <benety@mongodb.com>2018-04-04 20:18:59 -0400
commit8e5794077bd5bbaa0e43d39082659493567a3f62 (patch)
tree435641599c456b0e5642629269bd924bc62f9db9 /src/mongo/db/repl/rs_rollback.cpp
parent2e31167d0e2cf179a228afeec71853cfb0f0683f (diff)
downloadmongo-8e5794077bd5bbaa0e43d39082659493567a3f62.tar.gz
SERVER-34290 rollback via refetch handles missing dropTarget field
Diffstat (limited to 'src/mongo/db/repl/rs_rollback.cpp')
-rw-r--r--src/mongo/db/repl/rs_rollback.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/mongo/db/repl/rs_rollback.cpp b/src/mongo/db/repl/rs_rollback.cpp
index a9c632834b0..46597cf6671 100644
--- a/src/mongo/db/repl/rs_rollback.cpp
+++ b/src/mongo/db/repl/rs_rollback.cpp
@@ -429,11 +429,10 @@ Status rollback_internal::updateFixUpInfoFromLocalOplogEntry(FixUpInfo& fixUpInf
return Status(ErrorCodes::UnrecoverableRollbackError, message);
}
- // Checks if dropTarget is false. If it has a UUID value, we need to
+ // Checks if dropTarget is present. If it has a UUID value, we need to
// make sure to un-drop the collection that was dropped in the process
// of renaming.
- auto dropTarget = obj.getField("dropTarget");
- if (dropTarget.type() != Bool) {
+ if (auto dropTarget = obj.getField("dropTarget")) {
auto status =
fixUpInfo.recordDropTargetInfo(dropTarget, obj, oplogEntry.getOpTime());
if (!status.isOK()) {