-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: 4.4.8, 5.0.2
-
Component/s: None
-
None
-
Fully Compatible
-
ALL
-
v5.1, v5.0, v4.4, v4.2, v4.0
-
- update to glibc 2.34
- build mongodb server
-
Dev Platform 2021-09-20, Dev Platform 2021-10-04, Dev Platform 2021-10-18
Building the server fails with:
from src/mongo/db/auth/authorization_session.h:39, from src/mongo/s/commands/cluster_refine_collection_shard_key_cmd.cpp:34: src/mongo/stdx/thread.h:110:56: error: call to non-‘constexpr’ function ‘long int sysconf(int)’ 110 | std::max(kMongoMinSignalStackSize, std::size_t{MINSIGSTKSZ}); | ^~~~~~~~~~~ In file included from /usr/include/boost/config/stdlib/libstdcpp3.hpp:78, from /usr/include/boost/config.hpp:48,
This is due to changes in glibc-2.34 (https://sourceware.org/pipermail/libc-alpha/2021-August/129718.html):
* Add _SC_MINSIGSTKSZ and _SC_SIGSTKSZ. When _DYNAMIC_STACK_SIZE_SOURCE or _GNU_SOURCE are defined, MINSIGSTKSZ and SIGSTKSZ are no longer constant on Linux. MINSIGSTKSZ is redefined to sysconf(_SC_MINSIGSTKSZ) and SIGSTKSZ is redefined to sysconf (_SC_SIGSTKSZ). This supports dynamic sized register sets for modern architectural features like Arm SVE.
Downstream bug: https://bugs.gentoo.org/806773
- related to
-
SERVER-61433 Boost thread compilation warning with new glibc
- Closed