You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "Jin Shang (Jira)" <ji...@apache.org> on 2022/10/04 12:26:00 UTC

[jira] [Updated] (ARROW-17902) [C++][Gandiva] Solve LLVM 15 CI performace and compatibility issues

     [ https://issues.apache.org/jira/browse/ARROW-17902?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jin Shang updated ARROW-17902:
------------------------------
    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-17805 ARROW-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.

  was:
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-17805 ARROW-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.

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.


> [C++][Gandiva] Solve LLVM 15 CI performace and compatibility issues
> -------------------------------------------------------------------
>
>                 Key: ARROW-17902
>                 URL: https://issues.apache.org/jira/browse/ARROW-17902
>             Project: Apache Arrow
>          Issue Type: Bug
>          Components: C++ - Gandiva
>    Affects Versions: 9.0.0
>            Reporter: Jin Shang
>            Assignee: Jin Shang
>            Priority: Major
>
> 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-17805 ARROW-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.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)