From 2bdb574b4bd85257dc6dc7ab20ade581d1c991fc Mon Sep 17 00:00:00 2001 From: David Li Date: Wed, 21 Oct 2026 12:16:18 +0900 Subject: [PATCH 1/4] chore(dev/release): fix verification issues --- ci/conda_env_python.txt | 1 + dev/release/verify-release-candidate.sh | 1 + 2 files changed, 2 insertions(+) diff --git a/ci/conda_env_python.txt b/ci/conda_env_python.txt index 122f159ab9..787ef1b5ac 100644 --- a/ci/conda_env_python.txt +++ b/ci/conda_env_python.txt @@ -16,6 +16,7 @@ # under the License. cython +libpython # nodejs is required by pyright nodejs >=13.0.0 pandas diff --git a/dev/release/verify-release-candidate.sh b/dev/release/verify-release-candidate.sh index d08a1f1014..14b64cc7e9 100755 --- a/dev/release/verify-release-candidate.sh +++ b/dev/release/verify-release-candidate.sh @@ -838,6 +838,7 @@ test_unix_wheels() { adbc_*-cp${pyver/.}-cp${python/.}-${platform}*${arch}*.whl \ adbc_*-py3-none-${platform}*${arch}*.whl ${ADBC_DIR}/ci/scripts/python_wheel_unix_test.sh ${ADBC_DIR} + unset PYTHON_GIL done } From 4187128bfa213f50b76d8a8408cd23352e73eafa Mon Sep 17 00:00:00 2001 From: David Li Date: Wed, 21 Oct 2026 12:36:05 +0900 Subject: [PATCH 2/4] fix --- dev/release/verify-release-candidate.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/dev/release/verify-release-candidate.sh b/dev/release/verify-release-candidate.sh index 14b64cc7e9..f75d98a7a9 100755 --- a/dev/release/verify-release-candidate.sh +++ b/dev/release/verify-release-candidate.sh @@ -953,7 +953,14 @@ print(version.text) "-Djavadoc=${javadoc_path}" done + local test_arguments=() + if [[ "$(uname)" == "Darwin" && "$(uname -m)" == "x86_64" ]]; then + show_info "Skipping testDriverJni: JNI binaries are not available for macOS/x86_64" + test_arguments+=('-Dtest=!VerifyReleaseCandidateTest#testDriverJni') + fi + mvn -B test \ + "${test_arguments[@]}" \ "${maven_repository_argument}" \ "-Dadbc.version=${java_version}" \ -f "${SOURCE_DIR}/verify/java/pom.xml" From 97957b942fa28c50f1b7ed13221332ca6f0bdbd9 Mon Sep 17 00:00:00 2001 From: David Li Date: Wed, 21 Oct 2026 14:14:14 +0900 Subject: [PATCH 3/4] get maven to retry --- dev/release/verify-release-candidate.sh | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/dev/release/verify-release-candidate.sh b/dev/release/verify-release-candidate.sh index f75d98a7a9..1737ce8726 100755 --- a/dev/release/verify-release-candidate.sh +++ b/dev/release/verify-release-candidate.sh @@ -914,11 +914,19 @@ print(version.text) show_info "ADBC Java version: ${java_version}" local -r maven_repository="${ARROW_TMPDIR}/maven-repository" - local -r maven_repository_argument="-Dmaven.repo.local=${maven_repository}" + local -r maven_arguments=( + -B + -e + "-Dmaven.repo.local=${maven_repository}" + # Retry transient download failures in Maven's native HTTP transport. + -Dmaven.resolver.transport=native + -Daether.connector.http.retryHandler.count=5 + -Daether.connector.http.retryHandler.interval=5000 + -Daether.connector.http.retryHandler.serviceUnavailable=429,500,502,503,504 + ) mkdir -p "${maven_repository}" - mvn -B install:install-file \ - "${maven_repository_argument}" \ + mvn "${maven_arguments[@]}" install:install-file \ "-Dfile=${root_pom}" \ "-DpomFile=${root_pom}" \ -Dpackaging=pom @@ -945,8 +953,7 @@ print(version.text) fi done - mvn -B install:install-file \ - "${maven_repository_argument}" \ + mvn "${maven_arguments[@]}" install:install-file \ "-Dfile=${jar_path}" \ "-DpomFile=${pom_path}" \ "-Dsources=${sources_path}" \ @@ -959,9 +966,8 @@ print(version.text) test_arguments+=('-Dtest=!VerifyReleaseCandidateTest#testDriverJni') fi - mvn -B test \ + mvn "${maven_arguments[@]}" test \ "${test_arguments[@]}" \ - "${maven_repository_argument}" \ "-Dadbc.version=${java_version}" \ -f "${SOURCE_DIR}/verify/java/pom.xml" } From 64469c5cdcbcc54254b5b6b935624a3f69ff25ad Mon Sep 17 00:00:00 2001 From: David Li Date: Wed, 21 Oct 2026 15:02:15 +0900 Subject: [PATCH 4/4] more retry --- dev/release/verify-release-candidate.sh | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/dev/release/verify-release-candidate.sh b/dev/release/verify-release-candidate.sh index 1737ce8726..3c8e123f28 100755 --- a/dev/release/verify-release-candidate.sh +++ b/dev/release/verify-release-candidate.sh @@ -888,7 +888,7 @@ test_wheels() { test_jars() { show_header "Testing Java jars" - maybe_setup_conda maven python || exit 1 + maybe_setup_conda maven openjdk=17 python || exit 1 local root_poms=() shopt -s nullglob @@ -917,12 +917,18 @@ print(version.text) local -r maven_arguments=( -B -e + # Recheck missing artifacts instead of reusing cached resolution failures. + -U "-Dmaven.repo.local=${maven_repository}" # Retry transient download failures in Maven's native HTTP transport. -Dmaven.resolver.transport=native -Daether.connector.http.retryHandler.count=5 -Daether.connector.http.retryHandler.interval=5000 -Daether.connector.http.retryHandler.serviceUnavailable=429,500,502,503,504 + # Maven 3.10+ uses Resolver 2, which renamed the HTTP transport properties. + -Daether.transport.http.retryHandler.count=5 + -Daether.transport.http.retryHandler.interval=5000 + -Daether.transport.http.retryHandler.serviceUnavailable=429,500,502,503,504 ) mkdir -p "${maven_repository}"