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]

Reply via email to