From e6223ef6eba12456f60c5c18933363b4d8c83536 Mon Sep 17 00:00:00 2001 From: "Alina (Xi) Li" Date: Thu, 8 Jan 2026 14:07:02 -0800 Subject: [PATCH 1/2] Resolve ODBC CI long build time issue Attempt to resolve caching issue with ODBC CI Apply Kou's suggestion for nuget timeout Add write permission to store vcpkg cache Check nuget paths in Ruby Glib and ODBC Run vcpkg install after vcpkg is set in GLib Enable vcpkg verbose in GLib * confirmed `vcpkg install` command returns 403 error Add ARROW_HOME Remove `ARROW_SIMD_LEVEL` as it is not required for ODBC. Remove debug msgs Cannot get vcpkg in cpp_build to show debug messages Move location of `packages: write` Attempt to add `ARROW_DEPENDENCY_USE_SHARED - off` Revert "Move location of `packages: write`" This reverts commit b62e04ed6d88296217bd8ed05d67ee2fb0b927c2. Revert "Attempt to add `ARROW_DEPENDENCY_USE_SHARED - off`" This reverts commit 5fdf4251df18a4f2c1b7c697f99fe91ef6e1b9aa. Add GLib MSVC build to C++ Extra TEMP disable ODBC build Disable cmake and enable build Re-enable cmake 4.1.2 and use install_vcpkg.sh to install vcpkg --- .github/workflows/cpp_extra.yml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/.github/workflows/cpp_extra.yml b/.github/workflows/cpp_extra.yml index 7ab4c73270d..614649660d4 100644 --- a/.github/workflows/cpp_extra.yml +++ b/.github/workflows/cpp_extra.yml @@ -343,6 +343,8 @@ jobs: contains(fromJSON(needs.check-labels.outputs.ci-extra-labels || '[]'), 'CI: Extra') || contains(fromJSON(needs.check-labels.outputs.ci-extra-labels || '[]'), 'CI: Extra: C++') timeout-minutes: 240 + permissions: + packages: write env: ARROW_BUILD_SHARED: ON ARROW_BUILD_STATIC: OFF @@ -351,10 +353,10 @@ jobs: ARROW_DEPENDENCY_SOURCE: VCPKG ARROW_FLIGHT_SQL_ODBC: ON ARROW_FLIGHT_SQL_ODBC_INSTALLER: ON - ARROW_SIMD_LEVEL: AVX2 + ARROW_HOME: /usr CMAKE_GENERATOR: Ninja CMAKE_INSTALL_PREFIX: /usr - VCPKG_BINARY_SOURCES: 'clear;nuget,GitHub,readwrite' + VCPKG_BINARY_SOURCES: 'clear;nugettimeout,600;nuget,GitHub,readwrite' VCPKG_DEFAULT_TRIPLET: x64-windows steps: - name: Disable Crash Dialogs @@ -373,10 +375,6 @@ jobs: - name: Download Timezone Database shell: bash run: ci/scripts/download_tz_database.sh - - name: Install cmake - shell: bash - run: | - ci/scripts/install_cmake.sh 4.1.2 /usr - name: Install ccache shell: bash run: | From 519da218aa2ecee4bad4310d5c21256914c1e716 Mon Sep 17 00:00:00 2001 From: "Alina (Xi) Li" Date: Fri, 9 Jan 2026 15:19:23 -0800 Subject: [PATCH 2/2] Use Labeler to automatically add C++ Extra label Cannot add ODBC Label because it requires write access --- .github/workflows/dev_pr/labeler.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/dev_pr/labeler.yml b/.github/workflows/dev_pr/labeler.yml index 0950cacc2b9..e13287856e8 100644 --- a/.github/workflows/dev_pr/labeler.yml +++ b/.github/workflows/dev_pr/labeler.yml @@ -73,3 +73,9 @@ - any-glob-to-any-file: - docs/**/* - "**/*.{md, rst, Rmd, Rd}" + +"CI: Extra: C++": +- changed-files: + - any-glob-to-any-file: + - .github/workflows/cpp_extra.yml + - cpp/src/arrow/flight/sql/odbc/**/*