Skip to content

BDX-1692: Package the Arrow C++ Parquet SDK as release artifacts - #37

Merged
bodduv merged 2 commits into
dremio:dremio_27.0_23_19from
bodduv:codex/BDX-1340-arrow-parquet
Oct 15, 2026
Merged

bodduv merged 2 commits into
dremio:dremio_27.0_23_19from
bodduv:codex/BDX-1340-arrow-parquet

Conversation

@bodduv

@bodduv bodduv commented Oct 9, 2026 •

Copy link
Copy Markdown

Publish org.apache.arrow:arrow-parquet with linux-x86_64, linux-aarch_64 and osx-aarch_64 JARs. Each JAR contains the static Arrow C++ Parquet libraries, headers and lib/pkgconfig/arrow-parquet.pc, built from the same Arrow C++ revision as the JNI libraries. Dremio's Arrow C++ Parquet writer links against these packages (BDX-1692).

  • ci/scripts/arrow_parquet_package.sh stages a package from an Arrow C++ installation, then links and runs a Parquet round trip (Snappy, Gzip, Zstd) using only the staged files.
  • The packages reuse the existing Linux and macOS arm64 JNI builds; no job is added. Like the Gandiva, Dataset and C Data JNI libraries, there is no macOS x86_64 package.
  • jni_full_build.sh packages the three platform JARs, an empty main JAR and a POM. Binaries fails early if a platform package is missing.
  • The ORC source comes from archive.apache.org; Apache mirrors no longer host the pinned version.

Existing JARs keep the same entries. No Arrow APIs change.

Validation: JarBuild 38798795766 of the merged commit d39eb9a, with Arrow C++ 1835c91, passed every job. Compared with v19.1.0-f211c97-1835c91, release v19.1.0-d39eb9a-1835c91 adds only the 15 arrow-parquet files, and all 91 existing JARs have identical entry lists. Every package records Arrow C++ 1835c91 and passed the smoke test on its platform.

dremio/automation#3792 publishes these artifacts to Nexus.

🤖 Generated with Claude Code | Edited and Verified by @bodduv

Publish org.apache.arrow:arrow-parquet with linux-x86_64, linux-aarch_64,
osx-x86_64 and osx-aarch_64 JARs. Each holds the static Arrow C++ Parquet
libraries, headers and an arrow-parquet.pc built from the same Arrow C++
revision as the JNI libraries. A smoke test links and runs against every
staged package.

The Linux and macOS arm64 packages reuse the existing JNI build. The macOS
Intel package comes from a Parquet-only job, because the full JNI build
exceeds the runner time limit there; it targets macOS 13.0.

Download ORC and Thrift sources from archive.apache.org, since Apache
mirrors no longer host the pinned versions.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@bodduv
bodduv force-pushed the codex/BDX-1340-arrow-parquet branch from 3dfe794 to ea11c90 Compare October 14, 2026 08:46
@bodduv bodduv changed the title BDX-1340: Package Arrow Parquet native release artifacts BDX-1692: Package the Arrow C++ Parquet SDK as release artifacts Oct 14, 2026
Comment thread .github/workflows/jarbuild.yml Outdated
@bodduv
bodduv marked this pull request as ready for review October 14, 2026 15:50
@bodduv
bodduv requested a review from lriggs October 14, 2026 15:51
Comment thread .github/workflows/jarbuild.yml Outdated
Comment thread .github/workflows/jarbuild.yml Outdated

@lriggs lriggs left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

had a few questions

Arrow Java ships no macOS x86_64 JNI libraries, so arrow-parquet follows
the same platforms: linux-x86_64, linux-aarch_64 and osx-aarch_64. Remove
the Parquet-only Intel job and the Thrift archive URL it needed; keep the
ORC archive URL for the JNI builds.

Assign pkg-config output before splitting it, so that a pkg-config
failure stops the packaging script.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@bodduv
bodduv merged commit d39eb9a into dremio:dremio_27.0_23_19 Oct 15, 2026
35 of 36 checks passed
@bodduv
bodduv deleted the codex/BDX-1340-arrow-parquet branch October 15, 2026 19:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants