summaryrefslogtreecommitdiff
path: root/src/mongo/util/processinfo_linux.cpp
diff options
context:
space:
mode:
authorAndrew Morrow <acm@mongodb.com>2015-07-16 20:21:05 -0400
committerAndrew Morrow <acm@mongodb.com>2015-07-21 12:49:41 -0400
commita5d440119a5746936e3e426a1c89dacda972408a (patch)
treeaf6d703628079dc884b6c67b6b70455788ebc9b8 /src/mongo/util/processinfo_linux.cpp
parenta54af46f5c420c18156b99293b88fd6661a5edcb (diff)
downloadmongo-a5d440119a5746936e3e426a1c89dacda972408a.tar.gz
SERVER-8843 Return large page fault numbers as doubles
Diffstat (limited to 'src/mongo/util/processinfo_linux.cpp')
-rw-r--r--src/mongo/util/processinfo_linux.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mongo/util/processinfo_linux.cpp b/src/mongo/util/processinfo_linux.cpp
index d0bcbee2c01..8addc447ef3 100644
--- a/src/mongo/util/processinfo_linux.cpp
+++ b/src/mongo/util/processinfo_linux.cpp
@@ -432,7 +432,10 @@ void ProcessInfo::getExtraInfo(BSONObjBuilder& info) {
// docs claim hblkhd is included in uordblks but it isn't
LinuxProc p(_pid);
- info.appendNumber("page_faults", static_cast<long long>(p._maj_flt));
+ if (p._maj_flt <= std::numeric_limits<long long>::max())
+ info.appendNumber("page_faults", static_cast<long long>(p._maj_flt));
+ else
+ info.appendNumber("page_faults", static_cast<double>(p._maj_flt));
}
/**