hubgeter commented on code in PR #66546:
URL: https://github.com/apache/doris/pull/66546#discussion_r3868471242
##########
be/CMakeLists.txt:
##########
@@ -200,7 +200,8 @@ option(BUILD_FILE_CACHE_LRU_TOOL "ON for building file
cache lru tool or OFF for
message(STATUS "build file cache lru tool: ${BUILD_FILE_CACHE_LRU_TOOL}")
option(ENABLE_PAIMON_CPP "Enable Paimon C++ integration" ON)
-set(PAIMON_HOME "" CACHE PATH "Paimon install prefix")
+set(ARROW_HOME "${THIRDPARTY_DIR}/arrow-24.0.0" CACHE PATH "Selected Arrow
install prefix")
Review Comment:
Fixed in 44840469b04. build.sh now normalizes and exports the exact default
Arrow/Paimon pair before preflight, rejects unsupported non-default prefix
overrides before recovery, and CMake refreshes either the explicit environment
selection or the automatic DORIS_THIRDPARTY-derived selection on every
configure. The lifecycle harness covers the explicit-prefix rejection, and the
ASAN BE reconfigure confirmed both cache entries point to
installed/arrow-24.0.0.
##########
thirdparty/build-thirdparty.sh:
##########
@@ -1185,15 +1199,31 @@ build_arrow() {
"${BUILD_SYSTEM}" install
#copy dep libs
- cp -rf ./brotli_ep/src/brotli_ep-install/lib/libbrotlienc-static.a
"${TP_INSTALL_DIR}/lib64/libbrotlienc.a"
- cp -rf ./brotli_ep/src/brotli_ep-install/lib/libbrotlidec-static.a
"${TP_INSTALL_DIR}/lib64/libbrotlidec.a"
- cp -rf ./brotli_ep/src/brotli_ep-install/lib/libbrotlicommon-static.a
"${TP_INSTALL_DIR}/lib64/libbrotlicommon.a"
- strip_lib libarrow.a
- strip_lib libarrow_compute.a
- strip_lib libparquet.a
- strip_lib libarrow_dataset.a
- strip_lib libarrow_acero.a
+ cp -rf ./brotli_ep/src/brotli_ep-install/lib/libbrotlienc-static.a
"${install_dir}/lib64/libbrotlienc.a"
+ cp -rf ./brotli_ep/src/brotli_ep-install/lib/libbrotlidec-static.a
"${install_dir}/lib64/libbrotlidec.a"
+ cp -rf ./brotli_ep/src/brotli_ep-install/lib/libbrotlicommon-static.a
"${install_dir}/lib64/libbrotlicommon.a"
+ strip_lib_at "${install_dir}" libarrow.a
+ if [[ "${has_separate_compute_archive}" == "true" ]]; then
+ strip_lib_at "${install_dir}" libarrow_compute.a
+ fi
+ strip_lib_at "${install_dir}" libparquet.a
+ strip_lib_at "${install_dir}" libarrow_dataset.a
+ strip_lib_at "${install_dir}" libarrow_acero.a
+}
+build_arrow_17() {
+ invalidate_arrow_17_prebuilt_marker "${TP_INSTALL_DIR}"
+ clean_arrow_artifacts_in "${TP_INSTALL_DIR}"
Review Comment:
Fixed in 44840469b04. prepare_arrow_17_install_prefix invalidates old and
new root markers and removes the co-located Paimon artifacts before touching
Arrow. The new interrupted-migration lifecycle case verifies that Arrow/Paimon
artifacts are both absent after preparation while unrelated and
versioned-prefix artifacts remain intact.
##########
build.sh:
##########
@@ -535,10 +535,12 @@ rebuild_thirdparty_libraries() {
if [[ ! -f "${DORIS_THIRDPARTY}/installed/lib/${LAST_THIRDPARTY_LIB}" ]]; then
echo "Thirdparty libraries need to be build ..."
rebuild_thirdparty_libraries true
-elif [[ "${NEED_ARROW_PAIMON_THIRDPARTY}" == "true" ]] &&
- ! arrow_paimon_prebuilt_valid "${DORIS_THIRDPARTY}/installed"; then
- echo "Arrow/Paimon thirdparty libraries need to be rebuilt ..."
- rebuild_thirdparty_libraries false "${ARROW_PAIMON_BUILD_PACKAGES[@]}"
+elif [[ "${NEED_ARROW_PAIMON_THIRDPARTY}" == "true" ]]; then
Review Comment:
Fixed in 44840469b04. Standalone --compile-bench is normalized to a BE
consumer before thirdparty selection, while Cloud-only builds no longer request
the BE Arrow/Paimon stack. The lifecycle harness now covers both standalone
compile-bench recovery and a Cloud-only external prefix.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]