summaryrefslogtreecommitdiff
path: root/src/mongo/db/s/resharding/resharding_metrics.cpp
diff options
context:
space:
mode:
authorMax Hirschhorn <max.hirschhorn@mongodb.com>2021-06-17 11:03:38 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2021-06-17 11:27:24 +0000
commit817ffc748a45197542553b18549a35b4c2e9a2f2 (patch)
tree060764db7d5423bf294300b66369ec98e998304b /src/mongo/db/s/resharding/resharding_metrics.cpp
parentbf7e84984e992b7c994ba090d89fcd528973ff60 (diff)
downloadmongo-817ffc748a45197542553b18549a35b4c2e9a2f2.tar.gz
Revert "SERVER-57217 Don't report remainingOperationTimeEstimatedSecs in currentOp metrics for resharding for donors and coordinators"
This reverts commit e8f96019646425bc352f09b62d8e86b0e41f5d5b.
Diffstat (limited to 'src/mongo/db/s/resharding/resharding_metrics.cpp')
-rw-r--r--src/mongo/db/s/resharding/resharding_metrics.cpp16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/mongo/db/s/resharding/resharding_metrics.cpp b/src/mongo/db/s/resharding/resharding_metrics.cpp
index 483f0f2b04d..71c8542268d 100644
--- a/src/mongo/db/s/resharding/resharding_metrics.cpp
+++ b/src/mongo/db/s/resharding/resharding_metrics.cpp
@@ -85,16 +85,19 @@ Milliseconds remainingTime(Milliseconds elapsedTime, double elapsedWork, double
return Milliseconds(Milliseconds::rep(remainingMsec));
}
+// TODO SERVER-57217 Remove special-casing for the non-existence of the boost::optional.
static StringData serializeState(boost::optional<RecipientStateEnum> e) {
- return RecipientState_serializer(*e);
+ return RecipientState_serializer(e ? *e : RecipientStateEnum::kUnused);
}
+// TODO SERVER-57217 Remove special-casing for the non-existence of the boost::optional.
static StringData serializeState(boost::optional<DonorStateEnum> e) {
- return DonorState_serializer(*e);
+ return DonorState_serializer(e ? *e : DonorStateEnum::kUnused);
}
+// TODO SERVER-57217 Remove special-casing for the non-existence of the boost::optional.
static StringData serializeState(boost::optional<CoordinatorStateEnum> e) {
- return CoordinatorState_serializer(*e);
+ return CoordinatorState_serializer(e ? *e : CoordinatorStateEnum::kUnused);
}
// Allows tracking elapsed time for the resharding operation and its sub operations (e.g.,
@@ -189,6 +192,10 @@ void ReshardingMetrics::OperationMetrics::appendCurrentOpMetrics(BSONObjBuilder*
bob->append(kOpTimeElapsed, getElapsedTime(runningOperation));
+ bob->append(kOpTimeRemaining,
+ !remainingMsec ? int64_t{-1} /** -1 is a specified integer null value */
+ : durationCount<Seconds>(*remainingMsec));
+
switch (role) {
case Role::kDonor:
bob->append(kWritesDuringCritialSection, writesDuringCriticalSection);
@@ -197,9 +204,6 @@ void ReshardingMetrics::OperationMetrics::appendCurrentOpMetrics(BSONObjBuilder*
bob->append(kOpStatus, ReshardingOperationStatus_serializer(opStatus));
break;
case Role::kRecipient:
- bob->append(kOpTimeRemaining,
- !remainingMsec ? int64_t{-1} /** -1 is a specified integer null value */
- : durationCount<Seconds>(*remainingMsec));
bob->append(kDocumentsToCopy, documentsToCopy);
bob->append(kDocumentsCopied, documentsCopied);
bob->append(kBytesToCopy, bytesToCopy);