summaryrefslogtreecommitdiff
path: root/src/mongo/db/logical_time_validator_test.cpp
diff options
context:
space:
mode:
authorRandolph Tan <randolph@10gen.com>2018-02-14 16:19:48 -0500
committerRandolph Tan <randolph@10gen.com>2018-02-20 13:16:41 -0500
commit9d1a7c5be9edbfdd039723ee91455f35b5ecc948 (patch)
tree92d1596a5377f7ede17d65ed38fd523c06e1ba47 /src/mongo/db/logical_time_validator_test.cpp
parent5436c851b8322a0cb18611be0672f6a76d6e2f38 (diff)
downloadmongo-9d1a7c5be9edbfdd039723ee91455f35b5ecc948.tar.gz
SERVER-33081 Reset KeysCollectionManager during rollback properly
Diffstat (limited to 'src/mongo/db/logical_time_validator_test.cpp')
-rw-r--r--src/mongo/db/logical_time_validator_test.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/mongo/db/logical_time_validator_test.cpp b/src/mongo/db/logical_time_validator_test.cpp
index 461689a61e6..90eddb5ec98 100644
--- a/src/mongo/db/logical_time_validator_test.cpp
+++ b/src/mongo/db/logical_time_validator_test.cpp
@@ -181,5 +181,23 @@ TEST_F(LogicalTimeValidatorTest, ShouldGossipLogicalTimeIsFalseUntilKeysAreFound
ASSERT_OK(validator()->validate(operationContext(), newTime));
}
+TEST_F(LogicalTimeValidatorTest, CanSignTimesAfterReset) {
+ validator()->enableKeyGenerator(operationContext(), true);
+
+ LogicalTime t1(Timestamp(10, 0));
+ auto newTime = validator()->trySignLogicalTime(t1);
+
+ ASSERT_EQ(t1.asTimestamp(), newTime.getTime().asTimestamp());
+ ASSERT_TRUE(newTime.getProof());
+
+ validator()->resetKeyManagerCache();
+
+ LogicalTime t2(Timestamp(20, 0));
+ auto newTime2 = validator()->trySignLogicalTime(t2);
+
+ ASSERT_EQ(t2.asTimestamp(), newTime2.getTime().asTimestamp());
+ ASSERT_TRUE(newTime2.getProof());
+}
+
} // unnamed namespace
} // namespace mongo