From ac5610669c398185131a3d6cd062b8446443f865 Mon Sep 17 00:00:00 2001 From: "Alina (Xi) Li" Date: Wed, 14 Oct 2026 10:57:16 -0700 Subject: [PATCH] Attempt to fix driver and setup values - Add CI verification step as well --- .github/workflows/cpp_extra.yml | 19 +++++++++++++++++++ .../install/windows/arrow-flight-sql-odbc.wxs | 6 +++--- 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/.github/workflows/cpp_extra.yml b/.github/workflows/cpp_extra.yml index 45f1c01a205e..a574e8b6244f 100644 --- a/.github/workflows/cpp_extra.yml +++ b/.github/workflows/cpp_extra.yml @@ -792,6 +792,25 @@ jobs: $dll = Join-Path $bin "arrow_flight_sql_odbc.dll" if (Test-Path $dll) { Write-Host "Found ODBC DLL: $dll" + + # Verify ODBC driver registration values + $key = "HKLM:\SOFTWARE\ODBC\ODBCINST.INI\Apache Arrow Flight SQL ODBC Driver" + $props = Get-ItemProperty $key + foreach ($name in "Driver", "Setup") { + Write-Host "$name = '$($props.$name)'" + if ($props.$name -ne $dll) { + Write-Error "Registry value '$name' should be '$dll'" + exit 1 + } + } + if ($props.DriverODBCVer -ne "03.00") { + Write-Error "Registry value 'DriverODBCVer' should be '03.00', got '$($props.DriverODBCVer)'" + exit 1 + } + if ($props.UsageCount -ne 1) { + Write-Error "Registry value 'UsageCount' should be 1, got '$($props.UsageCount)'" + exit 1 + } exit 0 } } diff --git a/cpp/src/arrow/flight/sql/odbc/install/windows/arrow-flight-sql-odbc.wxs b/cpp/src/arrow/flight/sql/odbc/install/windows/arrow-flight-sql-odbc.wxs index faf009b1ceff..ab0d394796c0 100644 --- a/cpp/src/arrow/flight/sql/odbc/install/windows/arrow-flight-sql-odbc.wxs +++ b/cpp/src/arrow/flight/sql/odbc/install/windows/arrow-flight-sql-odbc.wxs @@ -25,10 +25,10 @@ - + - - + +