summaryrefslogtreecommitdiff
path: root/src/mongo/db/curop.cpp
diff options
context:
space:
mode:
authorNathan Louie <nathan.louie@10gen.com>2018-07-09 14:41:37 -0400
committerNathan Louie <nathan.louie@10gen.com>2018-07-25 11:25:39 -0400
commitcdc82971d30cbac5115c532e8d296ba74aebb204 (patch)
tree6bc886649e6eaa502f92b6b0dfabfcefa9ecd43a /src/mongo/db/curop.cpp
parentce430952c35a9409ee80d03f70b6b618aa1802cd (diff)
downloadmongo-cdc82971d30cbac5115c532e8d296ba74aebb204.tar.gz
SERVER-35432 Add a method for printing out information about a slow transaction
Diffstat (limited to 'src/mongo/db/curop.cpp')
-rw-r--r--src/mongo/db/curop.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/mongo/db/curop.cpp b/src/mongo/db/curop.cpp
index df504a19ca2..e6bc3462528 100644
--- a/src/mongo/db/curop.cpp
+++ b/src/mongo/db/curop.cpp
@@ -774,4 +774,22 @@ void OpDebug::AdditiveMetrics::incrementPrepareReadConflicts(long long n) {
*prepareReadConflicts += n;
}
+string OpDebug::AdditiveMetrics::report() {
+ StringBuilder s;
+
+ OPDEBUG_TOSTRING_HELP_OPTIONAL("keysExamined", keysExamined);
+ OPDEBUG_TOSTRING_HELP_OPTIONAL("docsExamined", docsExamined);
+ OPDEBUG_TOSTRING_HELP_OPTIONAL("nMatched", nMatched);
+ OPDEBUG_TOSTRING_HELP_OPTIONAL("nModified", nModified);
+ OPDEBUG_TOSTRING_HELP_OPTIONAL("ninserted", ninserted);
+ OPDEBUG_TOSTRING_HELP_OPTIONAL("ndeleted", ndeleted);
+ OPDEBUG_TOSTRING_HELP_OPTIONAL("nmoved", nmoved);
+ OPDEBUG_TOSTRING_HELP_OPTIONAL("keysInserted", keysInserted);
+ OPDEBUG_TOSTRING_HELP_OPTIONAL("keysDeleted", keysDeleted);
+ OPDEBUG_TOSTRING_HELP_OPTIONAL("prepareReadConflicts", prepareReadConflicts);
+ OPDEBUG_TOSTRING_HELP_OPTIONAL("writeConflicts", writeConflicts);
+
+ return s.str();
+}
+
} // namespace mongo