Skip to content

Bump integration infra to Iceberg 1.12.0 and Spark 4.1.3 - #4155

Merged
kevinjqliu merged 1 commit into
apache:mainfrom
kevinjqliu:kevinjqliu-bump-iceberg-1-12-infra
Oct 25, 2026
Merged

kevinjqliu merged 1 commit into
apache:mainfrom
kevinjqliu:kevinjqliu-bump-iceberg-1-12-infra

Conversation

@kevinjqliu

@kevinjqliu kevinjqliu commented Oct 25, 2026 •

Copy link
Copy Markdown
Contributor

Rationale for this change

Bump the integration test infra to the latest Iceberg Java release (1.12.0), along with the related dependencies. This is needed to test row lineage support in #3972 against Spark. Follows #3389.

Component File Before After
Iceberg (Spark runtime + AWS bundle) dev/spark/Dockerfile 1.11.0 1.12.0
Spark base image dev/spark/Dockerfile 4.0.1 4.1.3
Iceberg Spark runtime artifact dev/spark/Dockerfile 4.0_2.13 4.1_2.13
hadoop-aws dev/spark/Dockerfile 3.4.1 3.4.2
AWS SDK bundle dev/spark/Dockerfile 2.24.6 2.57.3
Hive metastore client dev/spark/Dockerfile 4.0.1 4.2.1
hive-standalone-metastore-client dev/spark/Dockerfile — 4.2.1 (new)
amazon/aws-cli dev/docker-compose*.yml 2.37.2 2.38.5
pyspark[connect] pyproject.toml, uv.lock 4.0.1 4.1.3
  • Iceberg 1.12.0: latest Java release; needed for the row lineage Spark tests in Add row-lineage support with Spark tests #3972.
  • Spark 4.1.3: latest 4.1 patch; Iceberg 1.12.0 ships a 4.1_2.13 runtime. Spark 4.2 has no Iceberg runtime yet.
  • pyspark 4.1.3: the Spark Connect client must match the server version.
  • hadoop-aws 3.4.2: must match the Hadoop version bundled with Spark 4.1.3.
  • AWS SDK 2.57.3: 2.24.6 was over two years old.
  • Hive metastore client 4.2.1: matches the Hive 4.2.1 server image (Update hive docker to 4.2.1 #3924).
  • hive-standalone-metastore-client: Hive 4.2 moved IMetaStoreClient out of hive-standalone-metastore-common into this new artifact; without it, provisioning fails with NoClassDefFoundError.
  • aws-cli 2.38.5: routine image refresh.

Are these changes tested?

Yes, locally:

  • docker compose -f dev/docker-compose-integration.yml up -d --build --wait + python dev/provision.py: passed
  • pytest tests/ -m integration: 1362 passed, 71 skipped
  • uv lock --check: passed

Are there any user-facing changes?

No, dev/test infra only.

Also bump hadoop-aws, AWS SDK, Hive metastore client, aws-cli, and
pyspark. Hive 4.2 moved IMetaStoreClient into the new
hive-standalone-metastore-client artifact, so download it as well.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@kevinjqliu
kevinjqliu marked this pull request as ready for review October 25, 2026 16:49
@kevinjqliu
kevinjqliu requested review from Fokko and geruh and a balanced review from Copilot and removed request for Copilot October 25, 2026 16:49
Comment thread dev/spark/Dockerfile
"org/apache/iceberg/iceberg-aws-bundle/${ICEBERG_VERSION}/iceberg-aws-bundle-${ICEBERG_VERSION}.jar" \
"org/apache/hadoop/hadoop-aws/${HADOOP_VERSION}/hadoop-aws-${HADOOP_VERSION}.jar" \
"org/apache/hive/hive-standalone-metastore-common/${HIVE_METASTORE_VERSION}/hive-standalone-metastore-common-${HIVE_METASTORE_VERSION}.jar" \
"org/apache/hive/hive-standalone-metastore-client/${HIVE_METASTORE_VERSION}/hive-standalone-metastore-client-${HIVE_METASTORE_VERSION}.jar" \

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

hive 4.2 split up packaging hms common and client, so we need to add this

@geruh
geruh added this pull request to the merge queue Oct 25, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Oct 25, 2026
@kevinjqliu
kevinjqliu added this pull request to the merge queue Oct 25, 2026
Merged via the queue into apache:main with commit e55718f Oct 25, 2026
21 checks passed
@kevinjqliu
kevinjqliu deleted the kevinjqliu-bump-iceberg-1-12-infra branch October 25, 2026 18:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants