You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@impala.apache.org by bo...@apache.org on 2022/09/02 11:06:12 UTC

[impala] 01/05: IMPALA-11467: Force Boost to use /dev/random for UUID generation

This is an automated email from the ASF dual-hosted git repository.

boroknagyz pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/impala.git

commit 85c6366d998a23fd940a72218eb39db57bc01002
Author: zhangyifan27 <ch...@163.com>
AuthorDate: Tue Aug 2 11:31:04 2022 +0800

    IMPALA-11467: Force Boost to use /dev/random for UUID generation
    
    To avoid crash issue at OS with kernel lower than Linux 3.17, this patch
    pick kudu's solution 35b5664f908cd1250c9f01e5dff77b653cfd12b7 into impala.
    
    Testing:
     - run pre-built impalad at CentOS 7 kernel 3.10 with no crash.
    
    Change-Id: Ic48bd59b0a846bcb91a6faf77156c0a49cd08ae8
    Reviewed-on: http://gerrit.cloudera.org:8080/18805
    Tested-by: Impala Public Jenkins <im...@cloudera.com>
    Reviewed-by: Alexey Serbin <al...@apache.org>
    Reviewed-by: Joe McDonnell <jo...@cloudera.com>
---
 be/CMakeLists.txt | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/be/CMakeLists.txt b/be/CMakeLists.txt
index 953ee9331..4ed427037 100644
--- a/be/CMakeLists.txt
+++ b/be/CMakeLists.txt
@@ -51,6 +51,12 @@ SET(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -DBOOST_DATE_TIME_POSIX_TIME_STD_CONFI
 SET(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -DBOOST_SYSTEM_NO_DEPRECATED")
 SET(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -DBOOST_BIND_GLOBAL_PLACEHOLDERS")
 SET(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -DBOOST_ALLOW_DEPRECATED_HEADERS")
+#  -DBOOST_UUID_RANDOM_PROVIDER_FORCE_POSIX
+#      For higher portability of the built binaries, switch to /dev/[u]random
+#      even if getrandom(2) is available. This is to allow for running binaries
+#      built at OS where getrandom(2) is available at OSes where getrandom(2)
+#      isn't supported (e.g., that might happen in containerized deployments).
+SET(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -DBOOST_UUID_RANDOM_PROVIDER_FORCE_POSIX")
 SET(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -B $ENV{IMPALA_TOOLCHAIN_PACKAGES_HOME}/binutils-$ENV{IMPALA_BINUTILS_VERSION}/bin/")
 IF($ENV{USE_GOLD_LINKER} STREQUAL "true")
   SET(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -fuse-ld=gold")