mongodb: Update to 4.4.13

Drop upstreamed patches which are present in this release
Add a patch to fix narrowing issue

Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Khem Raj
2022-04-12 10:39:23 -07:00
parent c535b7e879
commit 6904c37d29
4 changed files with 42 additions and 74 deletions
@@ -1,34 +0,0 @@
From 027044a692b588ef586d495f65eb58b07cc711a3 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 11 May 2021 10:15:51 -0700
Subject: [PATCH] Do not use MINSIGSTKSZ
Since glibc 2.34+ MINSIGSTKSZ is no more a constant. So,
let's hardwire this for now until better fix is found.
64Kb should be good anyway
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
src/mongo/stdx/thread.h | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/src/mongo/stdx/thread.h b/src/mongo/stdx/thread.h
index f8058279e3..f31f309959 100644
--- a/src/mongo/stdx/thread.h
+++ b/src/mongo/stdx/thread.h
@@ -104,10 +104,7 @@ private:
// . N Y : 4,344 | 13,048 | 7,352
// . Y Y : 4,424 | 13,672 | 8,392
// ( https://jira.mongodb.org/secure/attachment/233569/233569_stacktrace-writeup.txt )
- static constexpr std::size_t kMongoMinSignalStackSize = std::size_t{64} << 10;
-
- static constexpr std::size_t kStackSize =
- std::max(kMongoMinSignalStackSize, std::size_t{MINSIGSTKSZ});
+ static constexpr std::size_t kStackSize = std::size_t{64} << 10;
std::unique_ptr<std::byte[]> _stackStorage = std::make_unique<std::byte[]>(kStackSize);
#else // !MONGO_HAS_SIGALTSTACK
--
2.31.1
@@ -1,35 +0,0 @@
From 6fdb2d304e05a17e57b2efd7f8252794a8722dbe Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 1 Jun 2021 08:25:36 -0700
Subject: [PATCH] Use explicit typecast to size_t
maxMemoryUsageBytes is size_t type which may not match long long value
internalDocumentSourceGroupMaxMemoryBytes.load() returns, so typecast it
to avoid narrowing warning from clang
document_source_group.cpp:378:22: error: non-constant-expression cannot be narrowed from type 'long long' to 'size_t' (aka 'unsigned int') in initializer list [-Wc++11-narrowing]
maxMemoryUsageBytes ? *maxMemoryUsageBytes
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Upstream-Status: Submitted [https://github.com/mongodb/mongo/pull/1405]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
src/mongo/db/pipeline/document_source_group.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/mongo/db/pipeline/document_source_group.cpp b/src/mongo/db/pipeline/document_source_group.cpp
index c7bf44e72e..a52906a940 100644
--- a/src/mongo/db/pipeline/document_source_group.cpp
+++ b/src/mongo/db/pipeline/document_source_group.cpp
@@ -376,7 +376,7 @@ DocumentSourceGroup::DocumentSourceGroup(const intrusive_ptr<ExpressionContext>&
_doingMerge(false),
_memoryTracker{pExpCtx->allowDiskUse && !pExpCtx->inMongos,
maxMemoryUsageBytes ? *maxMemoryUsageBytes
- : internalDocumentSourceGroupMaxMemoryBytes.load()},
+ : (size_t)internalDocumentSourceGroupMaxMemoryBytes.load()},
_initialized(false),
_groups(pExpCtx->getValueComparator().makeUnorderedValueMap<Accumulators>()),
_spilled(false) {
--
2.31.1
@@ -0,0 +1,38 @@
From ad37ee80b32a1f740a3197105174d74dff11e4e8 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 13 Apr 2022 13:56:32 -0700
Subject: [PATCH] add explict static_cast<size_t> to maxMemoryUsageBytes
Fixes
src/mongo/db/pipeline/document_source_group.cpp:377:22: error: non-constant-expression cannot be narrowed from type 'long long' to 'size_t' (aka 'unsigned int') in initializer list [-Wc++11-narrowing]
maxMemoryUsageBytes ? *maxMemoryUsageBytes
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/mongo/db/pipeline/document_source_group.cpp:377:22: note: insert an explicit cast to silence this issue
maxMemoryUsageBytes ? *maxMemoryUsageBytes
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
src/mongo/db/pipeline/document_source_group.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/mongo/db/pipeline/document_source_group.cpp b/src/mongo/db/pipeline/document_source_group.cpp
index 4a7b48d6cd2..9a6076c6041 100644
--- a/src/mongo/db/pipeline/document_source_group.cpp
+++ b/src/mongo/db/pipeline/document_source_group.cpp
@@ -374,8 +374,8 @@ DocumentSourceGroup::DocumentSourceGroup(const intrusive_ptr<ExpressionContext>&
_usedDisk(false),
_doingMerge(false),
_memoryTracker{pExpCtx->allowDiskUse && !pExpCtx->inMongos,
- maxMemoryUsageBytes ? *maxMemoryUsageBytes
- : internalDocumentSourceGroupMaxMemoryBytes.load()},
+ static_cast<size_t>(maxMemoryUsageBytes ? *maxMemoryUsageBytes
+ : internalDocumentSourceGroupMaxMemoryBytes.load())},
// We spill to disk in debug mode, regardless of allowDiskUse, to stress the system.
_file(!pExpCtx->inMongos && (pExpCtx->allowDiskUse || kDebugBuild)
? std::make_shared<Sorter<Value, Value>::File>(pExpCtx->tempDir + "/" +
--
2.35.2
@@ -11,9 +11,9 @@ DEPENDS = "openssl libpcap zlib boost curl python3 \
inherit scons dos2unix siteinfo python3native systemd useradd
PV = "4.4.7"
#v4.4.7
SRCREV = "abb6b9c2bf675e9e2aeaecba05f0f8359d99e203"
PV = "4.4.13"
#v4.4.13
SRCREV = "df25c71b8674a78e17468f48bcda5285decb9246"
SRC_URI = "git://github.com/mongodb/mongo.git;branch=v4.4;protocol=https \
file://0001-Tell-scons-to-use-build-settings-from-environment-va.patch \
file://0001-Use-long-long-instead-of-int64_t.patch \
@@ -29,9 +29,8 @@ SRC_URI = "git://github.com/mongodb/mongo.git;branch=v4.4;protocol=https \
file://0001-include-needed-c-header.patch \
file://disable_runtime_check.patch \
file://ppc64_ARCH_BITS.patch \
file://0001-Do-not-use-MINSIGSTKSZ.patch \
file://0001-Use-explicit-typecast-to-size_t.patch \
file://PTHREAD_STACK_MIN.patch \
file://0001-add-explict-static_cast-size_t-to-maxMemoryUsageByte.patch \
"
SRC_URI:append:libc-musl ="\
file://0001-Mark-one-of-strerror_r-implementation-glibc-specific.patch \