You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@impala.apache.org by cs...@apache.org on 2026/10/08 14:52:13 UTC

(impala) branch master updated: IMPALA-14148: Update Protobuf to 3.21.9

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

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


The following commit(s) were added to refs/heads/master by this push:
     new baf1e8fe9 IMPALA-14148: Update Protobuf to 3.21.9
baf1e8fe9 is described below

commit baf1e8fe93af058d48bc468ab2d3a7b5f52ebbb3
Author: Michael Smith <mi...@cloudera.com>
AuthorDate: Tue Sep 15 10:08:09 2026 -0700

    IMPALA-14148: Update Protobuf to 3.21.9
    
    Updates Protobuf to 3.21.9 to match Kudu so we can build updated proto
    files from Kudu.
    
    Change-Id: I25e2c5e1a870ed0cf37da1297ffafb8e259ad606
    Reviewed-on: http://gerrit.cloudera.org:8080/24936
    Reviewed-by: Joe McDonnell <jo...@cloudera.com>
    Tested-by: Impala Public Jenkins <im...@cloudera.com>
    Reviewed-by: Csaba Ringhofer <cs...@cloudera.com>
---
 CMakeLists.txt                            | 11 -----------
 be/src/gutil/dynamic_annotations.h        |  5 +++++
 be/src/runtime/krpc-data-stream-sender.cc |  2 +-
 bin/bootstrap_toolchain.py                |  3 ---
 bin/impala-config.sh                      | 10 ++++------
 5 files changed, 10 insertions(+), 21 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8d1bff554..f8e5a188e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -145,8 +145,6 @@ set_dep_root(LZ4)
 set_dep_root(ZSTD)
 set_dep_root(OPENLDAP)
 set_dep_root(PROTOBUF)
-set(PROTOBUF_CLANG_ROOT
-    $ENV{IMPALA_TOOLCHAIN_PACKAGES_HOME}/protobuf-$ENV{IMPALA_PROTOBUF_CLANG_VERSION})
 set_dep_root(RE2)
 set_dep_root(RAPIDJSON)
 set_dep_root(SNAPPY)
@@ -378,15 +376,6 @@ find_package(Cctz REQUIRED)
 IMPALA_ADD_THIRDPARTY_LIB(cctz ${CCTZ_INCLUDE_DIR} ${CCTZ_STATIC_LIB} "")
 
 # find protobuf headers, libs and compiler
-if ("${CMAKE_BUILD_TYPE}" STREQUAL "ADDRESS_SANITIZER"
-    OR "${CMAKE_BUILD_TYPE}" STREQUAL "TIDY"
-    OR "${CMAKE_BUILD_TYPE}" STREQUAL "UBSAN"
-    OR "${CMAKE_BUILD_TYPE}" STREQUAL "UBSAN_FULL"
-    OR "${CMAKE_BUILD_TYPE}" STREQUAL "TSAN"
-    OR "${CMAKE_BUILD_TYPE}" STREQUAL "TSAN_FULL")
-  # Use the protobuf library with patches for Clang builds.
-  set(PROTOBUF_ROOT ${PROTOBUF_CLANG_ROOT})
-endif()
 message(STATUS "PROTOBUF_ROOT: " ${PROTOBUF_ROOT})
 
 find_package(Protobuf REQUIRED)
diff --git a/be/src/gutil/dynamic_annotations.h b/be/src/gutil/dynamic_annotations.h
index e326ff12f..b3414c484 100644
--- a/be/src/gutil/dynamic_annotations.h
+++ b/be/src/gutil/dynamic_annotations.h
@@ -602,6 +602,11 @@ void __asan_poison_memory_region(void const volatile *addr, size_t size);
 void __asan_unpoison_memory_region(void const volatile *addr, size_t size);
 
 // User code should use macros instead of functions.
+// Protobuf includes <sanitizer/asan_interface.h> when ADDRESS_SANITIZER is defined. In
+// the IR build (-DADDRESS_SANITIZER without -fsanitize=address) that header defines
+// these as no-ops, which would conflict with the definitions below.
+#undef ASAN_POISON_MEMORY_REGION
+#undef ASAN_UNPOISON_MEMORY_REGION
 #define ASAN_POISON_MEMORY_REGION(addr, size)   \
   __asan_poison_memory_region((addr), (size))
 #define ASAN_UNPOISON_MEMORY_REGION(addr, size) \
diff --git a/be/src/runtime/krpc-data-stream-sender.cc b/be/src/runtime/krpc-data-stream-sender.cc
index d4aa75717..ccfd52c38 100644
--- a/be/src/runtime/krpc-data-stream-sender.cc
+++ b/be/src/runtime/krpc-data-stream-sender.cc
@@ -588,7 +588,7 @@ Status KrpcDataStreamSender::Channel::DoTransmitDataRpc() {
       std::bind(&KrpcDataStreamSender::Channel::TransmitDataCompleteCb, this));
   // 'req' took ownership of 'header'. Need to release its ownership or 'header' will be
   // deleted by destructor.
-  req.release_row_batch_header();
+  (void)req.release_row_batch_header();
   return Status::OK();
 }
 
diff --git a/bin/bootstrap_toolchain.py b/bin/bootstrap_toolchain.py
index 494f66b52..438f61828 100755
--- a/bin/bootstrap_toolchain.py
+++ b/bin/bootstrap_toolchain.py
@@ -482,9 +482,6 @@ def get_toolchain_downloads():
   toolchain_packages += [gtest_package]
   toolchain_packages += get_unique_toolchain_downloads(
       ["thrift:cpp", "thrift:java", "thrift:py"])
-  protobuf_package_clang = ToolchainPackage(
-      "protobuf", explicit_version=os.environ.get("IMPALA_PROTOBUF_CLANG_VERSION"))
-  toolchain_packages += [protobuf_package_clang]
   if platform.machine() == 'aarch64':
     toolchain_packages.append(ToolchainPackage("hadoop-client"))
   # Check whether this platform is supported (or whether a valid custom toolchain
diff --git a/bin/impala-config.sh b/bin/impala-config.sh
index 84e7797f9..463466f81 100755
--- a/bin/impala-config.sh
+++ b/bin/impala-config.sh
@@ -81,13 +81,13 @@ export USE_AVRO_CPP=${USE_AVRO_CPP:=false}
 # moving to a different build of the toolchain, e.g. when a version is bumped or a
 # compile option is changed. The build id can be found in the output of the toolchain
 # build jobs, it is constructed from the build number and toolchain git hash prefix.
-export IMPALA_TOOLCHAIN_BUILD_ID_AARCH64=229-5f08080bb5
-export IMPALA_TOOLCHAIN_BUILD_ID_X86_64=704-5f08080bb5
+export IMPALA_TOOLCHAIN_BUILD_ID_AARCH64=234-0e30cdf431
+export IMPALA_TOOLCHAIN_BUILD_ID_X86_64=710-0e30cdf431
 export IMPALA_TOOLCHAIN_REPO=\
 ${IMPALA_TOOLCHAIN_REPO:-https://github.com/cloudera/native-toolchain.git}
 export IMPALA_TOOLCHAIN_BRANCH=${IMPALA_TOOLCHAIN_BRANCH:-master}
 export IMPALA_TOOLCHAIN_COMMIT_HASH=\
-${IMPALA_TOOLCHAIN_COMMIT_HASH-5f08080bb5dd63b8682492a3d03f357e2afa8e18}
+${IMPALA_TOOLCHAIN_COMMIT_HASH-0e30cdf43191286173e78aa4308a6d4f1784698f}
 # Compare the build ref in build IDs by removing everything up-to-and-including the
 # first hyphen.
 if [ "${IMPALA_TOOLCHAIN_BUILD_ID_AARCH64#*-}" \
@@ -183,10 +183,8 @@ export IMPALA_OPENLDAP_VERSION=2.5.20
 unset IMPALA_OPENLDAP_URL
 export IMPALA_ORC_VERSION=1.7.9-p12
 unset IMPALA_ORC_URL
-export IMPALA_PROTOBUF_VERSION=3.14.0
+export IMPALA_PROTOBUF_VERSION=3.21.9
 unset IMPALA_PROTOBUF_URL
-export IMPALA_PROTOBUF_CLANG_VERSION=3.14.0-clangcompat-p2
-unset IMPALA_PROTOBUF_CLANG_URL
 export IMPALA_POSTGRES_JDBC_DRIVER_VERSION=42.5.6
 unset IMPALA_POSTGRES_JDBC_DRIVER_URL
 export IMPALA_MYSQL_JDBC_DRIVER_VERSION=8.2.0