aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/patches/mongodb-support-unknown-linux-distributions.patch
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/patches/mongodb-support-unknown-linux-distributions.patch')
-rw-r--r--gnu/packages/patches/mongodb-support-unknown-linux-distributions.patch55
1 files changed, 55 insertions, 0 deletions
diff --git a/gnu/packages/patches/mongodb-support-unknown-linux-distributions.patch b/gnu/packages/patches/mongodb-support-unknown-linux-distributions.patch
new file mode 100644
index 0000000000..6057ebeb08
--- /dev/null
+++ b/gnu/packages/patches/mongodb-support-unknown-linux-distributions.patch
@@ -0,0 +1,55 @@
+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");
+ }
+
+ /**