56 lines
2.6 KiB
Diff
56 lines
2.6 KiB
Diff
From e724bb7018a482640c4f194f88b554af2c59d76e Mon Sep 17 00:00:00 2001
|
|
From: Mark Benvenuto <mark.benvenuto@mongodb.com>
|
|
Date: Wed, 20 Sep 2017 11:50:02 -0400
|
|
Subject: [PATCH] SERVER-30857 Support unknown Linux distributions
|
|
|
|
---
|
|
src/mongo/rpc/metadata/client_metadata.cpp | 6 ------
|
|
src/mongo/util/processinfo_linux.cpp | 9 ++++++---
|
|
2 files changed, 6 insertions(+), 9 deletions(-)
|
|
|
|
diff --git a/src/mongo/rpc/metadata/client_metadata.cpp b/src/mongo/rpc/metadata/client_metadata.cpp
|
|
index 845a315dd74..a959a4e31e9 100644
|
|
--- a/src/mongo/rpc/metadata/client_metadata.cpp
|
|
+++ b/src/mongo/rpc/metadata/client_metadata.cpp
|
|
@@ -302,9 +302,6 @@ void ClientMetadata::serializePrivate(StringData driverName,
|
|
StringData osArchitecture,
|
|
StringData osVersion,
|
|
BSONObjBuilder* builder) {
|
|
- invariant(!driverName.empty() && !driverVersion.empty() && !osType.empty() && !osName.empty() &&
|
|
- !osArchitecture.empty() && !osVersion.empty());
|
|
-
|
|
BSONObjBuilder metaObjBuilder(builder->subobjStart(kMetadataDocumentName));
|
|
|
|
{
|
|
@@ -347,9 +344,6 @@ Status ClientMetadata::serializePrivate(StringData driverName,
|
|
StringData osVersion,
|
|
StringData appName,
|
|
BSONObjBuilder* builder) {
|
|
- invariant(!driverName.empty() && !driverVersion.empty() && !osType.empty() && !osName.empty() &&
|
|
- !osArchitecture.empty() && !osVersion.empty());
|
|
-
|
|
if (appName.size() > kMaxApplicationNameByteLength) {
|
|
return Status(ErrorCodes::ClientMetadataAppNameTooLarge,
|
|
str::stream() << "The '" << kApplication << "." << kName
|
|
diff --git a/src/mongo/util/processinfo_linux.cpp b/src/mongo/util/processinfo_linux.cpp
|
|
index c3debf377bd..c2813b026b0 100644
|
|
--- a/src/mongo/util/processinfo_linux.cpp
|
|
+++ b/src/mongo/util/processinfo_linux.cpp
|
|
@@ -376,10 +376,13 @@ class LinuxSysHelper {
|
|
if ((nl = name.find('\n', nl)) != string::npos)
|
|
// stop at first newline
|
|
name.erase(nl);
|
|
- // no standard format for name and version. use kernel version
|
|
- version = "Kernel ";
|
|
- version += LinuxSysHelper::readLineFromFile("/proc/sys/kernel/osrelease");
|
|
+ } else {
|
|
+ name = "unknown";
|
|
}
|
|
+
|
|
+ // There is no standard format for name and version so use the kernel version.
|
|
+ version = "Kernel ";
|
|
+ version += LinuxSysHelper::readLineFromFile("/proc/sys/kernel/osrelease");
|
|
}
|
|
|
|
/**
|