diff options
author | Mark Benvenuto <mark.benvenuto@mongodb.com> | 2017-09-20 11:50:02 -0400 |
---|---|---|
committer | Mark Benvenuto <mark.benvenuto@mongodb.com> | 2018-05-03 11:19:41 -0400 |
commit | 607e67a643556234937af69e9b72b2cc8c34b692 (patch) | |
tree | 3b96ab3f41c7ea29d705669f36c313c3ca0085d2 | |
parent | c9202bfe40c291a97ff56d8410b8f2245de44ab0 (diff) | |
download | mongo-607e67a643556234937af69e9b72b2cc8c34b692.tar.gz |
SERVER-30857 Support unknown Linux distributions
(cherry picked from commit e724bb7018a482640c4f194f88b554af2c59d76e)
-rw-r--r-- | src/mongo/rpc/metadata/client_metadata.cpp | 6 | ||||
-rw-r--r-- | 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 910015215e0..878d423af7f 100644 --- a/src/mongo/util/processinfo_linux.cpp +++ b/src/mongo/util/processinfo_linux.cpp @@ -374,10 +374,13 @@ public: 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"); } /** |