Skip to content

Conversation

@gargsaumya
Copy link
Contributor

@gargsaumya gargsaumya commented Dec 9, 2025

Work Item / Issue Reference

AB#40903

GitHub Issue: #<ISSUE_NUMBER>


Summary

  1. ARM64 ODBC Package Issue:
    • The ARM64 ODBC driver package (msodbcsql18_18.5.1.1-1_arm64.apk) contains arch = x86_64 in .PKGINFO.
    • This is causing installation failures on newer Alpine versions where architecture validation is enforced.
    • Local Docker testing confirmed that Alpine 3.22 installs the package successfully.

  2. Compiler Warning Issue on Alpine:
    • The CI also fails with alpine :latest due to a new compiler warning in std::wstring_convert (_GLIBCXX17_DEPRECATED) which is treated as an error.
    • The current fix for this warning relies on Alpine 3.22, so we have pinned x86_64 CI to 3.22 too for now.

  3. Temporary CI Fix:
    • Both ARM64 and x86_64 CI jobs are now pinned to Alpine 3.22.
    • This unblocks all pipelines while maintaining consistency across architectures.

  4. We'll track ODBC team’s fix for ARM64 package and once fixed, we can safely move Alpine CI back to alpine:latest. Also, we have a proper fix for the compiler warning to allow CI to eventually move back to latest.

Copilot AI review requested due to automatic review settings December 9, 2025 04:43
@github-actions github-actions bot added the pr-size: small Minimal code update label Dec 9, 2025
@gargsaumya gargsaumya changed the title FIX: Pin Alpine ARM64 to 3.20 to fix msodbcsql arch mismatch issue (temp) FIX: Pin Alpine ARM64 to 3.22 to fix msodbcsql arch mismatch issue (temp) Dec 9, 2025
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR implements a temporary workaround for an ARM64 ODBC driver architecture mismatch issue by pinning the Alpine container version used in ARM64 CI jobs. The issue stems from the ARM64 msodbcsql package incorrectly reporting its architecture as x86_64, causing installation failures on newer Alpine versions with stricter validation.

Key Changes:

  • Pins Alpine ARM64 CI container from alpine:latest to alpine:3.22
  • x86_64 Alpine CI jobs remain on alpine:latest (unaffected by the ODBC driver issue)

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@github-actions
Copy link

github-actions bot commented Dec 9, 2025

📊 Code Coverage Report

🔥 Diff Coverage

100%


🎯 Overall Coverage

75%


📈 Total Lines Covered: 5094 out of 6757
📁 Project: mssql-python


Diff Coverage

Diff: main...HEAD, staged and unstaged changes

No lines with coverage information in this diff.


📋 Files Needing Attention

📉 Files with overall lowest coverage (click to expand)
mssql_python.pybind.logger_bridge.cpp: 59.2%
mssql_python.row.py: 66.2%
mssql_python.pybind.ddbc_bindings.cpp: 67.1%
mssql_python.helpers.py: 67.5%
mssql_python.pybind.connection.connection.cpp: 73.6%
mssql_python.pybind.ddbc_bindings.h: 76.9%
mssql_python.ddbc_bindings.py: 79.6%
mssql_python.pybind.connection.connection_pool.cpp: 79.6%
mssql_python.connection.py: 82.5%
mssql_python.cursor.py: 83.8%

🔗 Quick Links

⚙️ Build Summary 📋 Coverage Details

View Azure DevOps Build

Browse Full Coverage Report

@gargsaumya gargsaumya changed the title FIX: Pin Alpine ARM64 to 3.22 to fix msodbcsql arch mismatch issue (temp) FIX: Pin Alpine ARM64 to 3.22 to fix msodbcsql arch mismatch issue Dec 9, 2025
@gargsaumya gargsaumya force-pushed the saumya/alpine-arm64failure branch from 64b637f to 46092a9 Compare December 9, 2025 04:51
@gargsaumya gargsaumya force-pushed the saumya/alpine-arm64failure branch from aafe524 to af608b3 Compare December 9, 2025 05:57
@gargsaumya gargsaumya merged commit ecb405f into main Dec 9, 2025
24 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr-size: small Minimal code update

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants