From 90ffed91e3772c9c3d8a9c4c313397c6af51d3f3 Mon Sep 17 00:00:00 2001 From: "Alina (Xi) Li" Date: Mon, 5 Jan 2026 14:20:15 -0800 Subject: [PATCH 1/2] Fix ODBC deadlock issue `absl::SetMutexDeadlockDetectionMode(absl::OnDeadlockCycle::kIgnore);` fixes ODBC deadlock issue. We turn off the detection as the deadlock originated from upstream projects. --- cpp/src/arrow/flight/sql/odbc/odbc_impl/flight_sql_driver.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/cpp/src/arrow/flight/sql/odbc/odbc_impl/flight_sql_driver.cc b/cpp/src/arrow/flight/sql/odbc/odbc_impl/flight_sql_driver.cc index 8b24762bfc3..c6a813cfd48 100644 --- a/cpp/src/arrow/flight/sql/odbc/odbc_impl/flight_sql_driver.cc +++ b/cpp/src/arrow/flight/sql/odbc/odbc_impl/flight_sql_driver.cc @@ -15,6 +15,8 @@ // specific language governing permissions and limitations // under the License. +#include + #include "arrow/flight/sql/odbc/odbc_impl/flight_sql_driver.h" #include "arrow/compute/api.h" @@ -37,6 +39,8 @@ FlightSqlDriver::FlightSqlDriver() RegisterComputeKernels(); // Register log after compute kernels check to avoid segfaults RegisterLog(); + // GH-48637: Disable Absl Deadlock detection from upstream projects + absl::SetMutexDeadlockDetectionMode(absl::OnDeadlockCycle::kIgnore); } FlightSqlDriver::~FlightSqlDriver() { From 53fea111c6a882302d4e5b226eeeb68f706deb23 Mon Sep 17 00:00:00 2001 From: "Alina (Xi) Li" Date: Thu, 18 Dec 2025 10:53:50 -0800 Subject: [PATCH 2/2] Fix ODBC Extra slow CI issue Attempt to resolve caching issue with ODBC CI 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 Clean up test changes Push after previous run is complete. Revert "Re-enable cmake 4.1.2 and use install_vcpkg.sh to install vcpkg" This reverts commit dfea3774de18f764ee6bcba8293d347e4e358813. Trigger CI Apply Kou's suggestion for nuget timeout --- .github/workflows/cpp_extra.yml | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/.github/workflows/cpp_extra.yml b/.github/workflows/cpp_extra.yml index 612175e60f6..d45d7f54b7d 100644 --- a/.github/workflows/cpp_extra.yml +++ b/.github/workflows/cpp_extra.yml @@ -337,8 +337,11 @@ jobs: if: >- needs.check-labels.outputs.force == 'true' || contains(fromJSON(needs.check-labels.outputs.ci-extra-labels || '[]'), 'CI: Extra') || - contains(fromJSON(needs.check-labels.outputs.ci-extra-labels || '[]'), 'CI: Extra: C++') + contains(fromJSON(needs.check-labels.outputs.ci-extra-labels || '[]'), 'CI: Extra: C++') || + contains(join(github.event.pull_request.changed_files, ' '), 'cpp/src/arrow/flight/sql/odbc/') timeout-minutes: 240 + permissions: + packages: write env: ARROW_BUILD_SHARED: ON ARROW_BUILD_STATIC: OFF @@ -346,10 +349,10 @@ jobs: ARROW_BUILD_TYPE: release ARROW_DEPENDENCY_SOURCE: VCPKG ARROW_FLIGHT_SQL_ODBC: 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 @@ -368,10 +371,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: |