diff --git a/.github/workflows/rc.yml b/.github/workflows/rc.yml index bc4ed5d5e6..15aae3ff9b 100644 --- a/.github/workflows/rc.yml +++ b/.github/workflows/rc.yml @@ -111,15 +111,16 @@ jobs: - name: Extract source archive run: | tar -xf apache-arrow-java-*.tar.gz --strip-components=1 - - name: Download the latest Apache Arrow C++ + - name: Download the latest Apache Arrow C++ RC if: github.event_name != 'schedule' run: | - ci/scripts/download_cpp.sh + ci/scripts/download_cpp.sh latest-rc - name: Checkout Apache Arrow C++ if: github.event_name == 'schedule' uses: actions/checkout@v7 with: repository: apache/arrow + ref: main path: arrow - name: Checkout apache/arrow-testing uses: actions/checkout@v7 @@ -178,7 +179,11 @@ jobs: - name: Extract source archive run: | tar -xf apache-arrow-java-*.tar.gz --strip-components=1 + - name: Download the latest Apache Arrow C++ RC + if: github.event_name != 'schedule' + run: ci/scripts/download_cpp.sh latest-rc - name: Checkout Apache Arrow C++ + if: github.event_name == 'schedule' uses: actions/checkout@v7 with: repository: apache/arrow @@ -267,6 +272,16 @@ jobs: # make brew Java available to CMake export JAVA_HOME=$(brew --prefix openjdk@17)/libexec/openjdk.jdk/Contents/Home ci/scripts/jni_macos_build.sh . arrow build jni + - name: Test JSON dataset read + run: | + JAVA_HOME="$(brew --prefix openjdk@17)/libexec/openjdk.jdk/Contents/Home" + export JAVA_HOME + # Install dependencies without applying the dataset-only test filter to them. + mvn -Parrow-jni -pl dataset -am install -DskipTests \ + -Darrow.c.jni.dist.dir="$PWD/jni" -Darrow.cpp.build.dir="$PWD/jni" + mvn -Parrow-jni -pl dataset test \ + -Darrow.c.jni.dist.dir="$PWD/jni" -Darrow.cpp.build.dir="$PWD/jni" \ + -Dtest='TestFileSystemDataset#testBaseJsonRead' - name: Compress into single artifact to keep directory structure run: tar -cvzf jni-macos-${{ matrix.platform.arch }}.tar.gz jni/ - name: Upload artifacts diff --git a/Brewfile b/Brewfile index 2c47a38af5..d25469656d 100644 --- a/Brewfile +++ b/Brewfile @@ -16,4 +16,5 @@ # under the License. brew "openjdk@17" +brew "maven" brew "sccache" diff --git a/ci/scripts/jni_macos_build.sh b/ci/scripts/jni_macos_build.sh index 32a1faefb8..49289caa86 100755 --- a/ci/scripts/jni_macos_build.sh +++ b/ci/scripts/jni_macos_build.sh @@ -64,6 +64,7 @@ export ARROW_BUILD_TESTS=OFF export ARROW_DATASET=ON export ARROW_GANDIVA=ON +export ARROW_JSON=ON export ARROW_ORC=ON export ARROW_PARQUET=ON @@ -73,6 +74,7 @@ cmake \ -S "${arrow_dir}/cpp" \ -B "${build_dir}/cpp" \ --preset=ninja-release-jni-macos \ + -DARROW_JSON="${ARROW_JSON}" \ -Dabsl_SOURCE=BUNDLED \ -Dlz4_SOURCE=BUNDLED \ -Dsimdjson_SOURCE=BUNDLED \