[CI] Mac jar build uses a different LLVM version than Linux
- 主要语言
- Java
- 星标
- 94
- 派生
- 152
- 平均合并
- 3 天 16 小时
- 30 天内合并 PR
- 11
描述
### Describe the bug, including details regarding any error messages, version, and platform.
The Mac build uses an older LLVM version (15) than Linux (18). This seems to be related to the CI code and the fact that the mac github runners have llvm installed via brew
https://github.com/actions/runner-images/blob/releases/macos-14-arm64/20250915/images/macos/macos-14-arm64-Readme.md
Even newer runners only have LLVM 17.
The discrepancy could lead to hard to find bugs or performance issues.
Is it possible to use vcpkg for the mac builds? That way we could be assured that they are always consistent across platforms.
A few related changes I found:
Unpin the llvm version in arrow/cpp/Brewfile. I think this might mean that theoretically the latest llvm could be installed but since the runner image already has an older one installed, that is used instead.
https://github.com/apache/arrow/commit/c1f995226c46c2bba9c5fbf988cf9b247f87adad
A related change talking about llvm 14. https://github.com/apache/arrow/pull/14310
贡献指南
调研方向
定位 macOS 和 Linux 的 jar-build CI 定义,并比较 LLVM 的选择方式,然后检查 arrow/cpp/Brewfile 和链接的 runner-image 详细信息。完成的标准是构建使用一致的 LLVM 版本,或者平台之间的版本差异已有明确记录并得到合理说明。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- github-actions, java
- 领域
- build-system, ci-cd
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 38/100