apache / apache/arrow-java

[CI] Mac jar build uses a different LLVM version than Linux

未关闭
#862 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
Type: bug
主要语言
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

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。