summaryrefslogtreecommitdiff
path: root/gnu/packages
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/databases.scm13
-rw-r--r--gnu/packages/patches/mongodb-support-unknown-linux-distributions.patch55
2 files changed, 63 insertions, 5 deletions
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 03d01b582a..8bb248fa1d 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -664,24 +664,27 @@ replacement for the code@{python-memcached} library.")
(define-public mongodb
(package
(name "mongodb")
- (version "3.4.24")
+ (version "3.4.10")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/mongodb/mongo/archive/r"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
- (base32 "0y1669sqj8wyf0y0njhxs4qhn1qzjhrs2h2qllya5samxrlrjhkg"))
+ (base32 "0676lvkljj7a5hdhv78dbykqnqrj9lbn9799mi84b8vbnzsq961r"))
(modules '((guix build utils)))
(snippet
'(begin
(for-each (lambda (dir)
(delete-file-recursively
(string-append "src/third_party/" dir)))
- '("pcre-8.42" "scons-2.5.0" "snappy-1.1.3"
+ '("pcre-8.41" "scons-2.5.0" "snappy-1.1.3"
"valgrind-3.11.0" "wiredtiger"
- "yaml-cpp-0.6.2" "zlib-1.2.11"))
- #t))))
+ "yaml-cpp-0.5.3" "zlib-1.2.8"))
+ #t))
+ (patches
+ (list
+ (search-patch "mongodb-support-unknown-linux-distributions.patch")))))
(build-system scons-build-system)
(inputs
`(("openssl" ,openssl-1.0)
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");
+ }
+
+ /**