summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHaley Connelly <haley.connelly@mongodb.com>2021-07-28 19:45:57 +0000
committerBlake Oler <blake.oler@mongodb.com>2021-08-20 18:43:32 +0000
commitda07f3dd253c18c433a7a03a80a1228b37991da0 (patch)
tree0cb187739628b4cd41d21602f9e0c0724550dcd0
parent0540ed3053add3e352dc81c6fb7f6dd3a11afc31 (diff)
downloadmongo-da07f3dd253c18c433a7a03a80a1228b37991da0.tar.gz
SERVER-58926 ReshardingDonor should not try to set the stop time of the critical section if it the critical section was already released
(cherry picked from commit 07a6841c533193ec64190a870ee11672ba4d39e5)
-rw-r--r--src/mongo/db/s/resharding/resharding_metrics.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/mongo/db/s/resharding/resharding_metrics.cpp b/src/mongo/db/s/resharding/resharding_metrics.cpp
index a47cffc131b..4804ccb2bb7 100644
--- a/src/mongo/db/s/resharding/resharding_metrics.cpp
+++ b/src/mongo/db/s/resharding/resharding_metrics.cpp
@@ -105,13 +105,19 @@ static StringData serializeState(boost::optional<CoordinatorStateEnum> e) {
class TimeInterval {
public:
void start(Date_t d) noexcept {
- invariant(!_start, "Already started");
+ if (_start) {
+ LOGV2_WARNING(5892600, "Resharding metrics already started, start() is a no-op");
+ return;
+ }
_start = d;
}
void end(Date_t d) noexcept {
invariant(_start, "Not started");
- invariant(!_end, "Already stopped");
+ if (_end) {
+ LOGV2_WARNING(5892601, "Resharding metrics already ended, end() is a no-op");
+ return;
+ }
_end = d;
}