From 68db6621c07624babec05caccbf47c079a5ed20e Mon Sep 17 00:00:00 2001 From: Dane Pitkin Date: Wed, 26 Jun 2024 12:49:32 -0400 Subject: [PATCH] GH-43045: [CI][Python] Pin openjdk=17 in python substrait integration (#43051) ### Rationale for this change Substrait builds and releases using JDK 17. In the Substrait repo, Gradle was updated from 7.4.2 -> 8.8. https://github.com/substrait-io/substrait-java/commit/77e79ad6fc7f100d38bbe12d9e83ad03adff313b Gradle 8.8 can not be used with openjdk 22 yet, which is the latest version downloaded from condaforge. My testing showed that openjdk 21 also fails with the same error. ### What changes are included in this PR? * Pin openjdk=17 ### Are these changes tested? Testing via crossbow ### Are there any user-facing changes? No * GitHub Issue: #43045 Authored-by: Dane Pitkin Signed-off-by: Dane Pitkin --- ci/docker/conda-python-substrait.dockerfile | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/ci/docker/conda-python-substrait.dockerfile b/ci/docker/conda-python-substrait.dockerfile index 191795f253000..36dd64e51e7ad 100644 --- a/ci/docker/conda-python-substrait.dockerfile +++ b/ci/docker/conda-python-substrait.dockerfile @@ -24,11 +24,19 @@ FROM ${repo}:${arch}-conda-python-${python} COPY ci/conda_env_python.txt \ ci/conda_env_sphinx.txt \ /arrow/ci/ + +# Note: openjdk is pinned to 17 because the +# substrait repo currently pins to jdk 17. +# Newer jdk versions are currently failing +# due to the recent upgrade to Gradle 8 via +# install_substrait_consumer.sh. +# https://github.com/substrait-io/substrait-java/issues/274 RUN mamba install -q -y \ --file arrow/ci/conda_env_python.txt \ --file arrow/ci/conda_env_sphinx.txt \ $([ "$python" == "3.9" ] && echo "pickle5") \ - python=${python} openjdk \ + python=${python} \ + openjdk=17 \ nomkl && \ mamba clean --all