Details
-
Bug
-
Status: In Progress
-
Major
-
Resolution: Unresolved
-
9.0.0
-
None
-
None
Description
Package managers have been upgrading their default LLVM version to 15. This raises several compatibility and performance issues for CI, and we currently are using workaounds
- Mac's default clang 13's LTO cannot read Brew installed llvm static libs because they are compiled with llvm 15 (https://github.com/apache/arrow/pull/14187#issuecomment-1253322948). Workaround: Use brew installed clang:
ARROW-17805ARROW-17842 - Conda's packaging of LLVM 15 on Windows is not portable. It required a VS2019 Enterprise version: https://github.com/conda-forge/llvmdev-feedstock/issues/175. Workaround: Pin LLVM to 14 for Conda with Windows.
ARROW-17830 - Brew's LLVM15 enables z3 by default and it's shared linked. It breaks Java jar builds on MacOS: https://github.com/apache/arrow/pull/14261#issuecomment-1263024112. Workaround: Pin LLVM to 14 for all MacOS tasks.
- LLVM 15 is noticably slower to build than LLVM 14 for brew and MacOS. Workaround: Pin LLVM to 14 for all MacOS tasks.
ARROW-17872
We need to find a way to resolve these workarounds for LLVM 15.
Edit: The current mac os runner we use `macos-latest` has llvm@14 preinstalled. So pinning to 14 can save build time and fix dependency issues. We can move to llvm@15 on mac once the github images support them by default.
Attachments
Issue Links
- relates to
-
ARROW-17805 [C++][CI] Use Brew installed clang for MacOS
- Resolved
-
ARROW-17830 [C++][Gandiva] AppVeyor Windows builds failing due to 'diaguids.lib'
- Resolved
-
ARROW-17842 [C++][CI] Use Brew installed clang for MacOS verify-rc
- Resolved
-
ARROW-17869 [Java][Gandiva] ProjectorTest.testStringOutput is failed
- Closed
-
ARROW-17872 [CI] Reduce required dependencies on macOS builds
- Resolved