Skip to content

ci: reduce PR test matrix for Spark SQL and Iceberg#4404

Closed
andygrove wants to merge 1 commit into
apache:mainfrom
andygrove:ci-reduce-pr-matrix
Closed

ci: reduce PR test matrix for Spark SQL and Iceberg#4404
andygrove wants to merge 1 commit into
apache:mainfrom
andygrove:ci-reduce-pr-matrix

Conversation

@andygrove
Copy link
Copy Markdown
Member

@andygrove andygrove commented May 22, 2026

Which issue does this PR close?

Part of #4406

Rationale for this change

The Spark SQL test workflow runs every Spark version (3.4, 3.5, 4.0, 4.1) on every pull request, and the Iceberg test workflows run every Iceberg version (1.8.1, 1.9.1, 1.10.0). This is valuable coverage on main but is expensive to run on every pull request iteration. Reducing the matrix on pull requests shortens feedback time and frees runner capacity, while pushes to main still get the full sweep so regressions on the less-common versions are still caught before release.

What changes are included in this PR?

The varying matrix dimension in each workflow is now selected with a conditional fromJSON expression keyed on github.event_name:

  • spark_sql_test.yml: pull requests test only Spark 3.5 and 4.1; pushes to main and manual workflow_dispatch runs test the full set (3.4, 3.5, 4.0, 4.1). The 7-entry module matrix is unchanged, so pull request runs drop from 28 jobs to 14.
  • iceberg_spark_test.yml: pull requests test only the latest Iceberg version (1.10.0); pushes to main and manual workflow_dispatch runs test the full set (1.8.1, 1.9.1, 1.10.0). This applies to all three Iceberg jobs (iceberg-spark, iceberg-spark-extensions, iceberg-spark-runtime).

Manual workflow_dispatch runs intentionally use the full matrix so the complete sweep can still be triggered on demand.

How are these changes tested?

These are CI configuration changes. Both modified workflows pass actionlint (the same check run by validate_workflows.yml), and the inline matrix JSON was verified to parse. The conditional matrix behavior will be observable on this pull request (reduced matrix) versus subsequent pushes to main (full matrix).

Pull request builds now run a reduced matrix while pushes to main and
manual workflow_dispatch runs keep the full matrix:

- Spark SQL tests: pull requests test only Spark 3.5 and 4.1 (down from
  3.4, 3.5, 4.0, 4.1).
- Iceberg tests: pull requests test only the latest Iceberg version,
  1.10.0 (down from 1.8.1, 1.9.1, 1.10.0).

The varying matrix dimension is selected with a conditional fromJSON
expression keyed on github.event_name.
@andygrove andygrove marked this pull request as ready for review May 22, 2026 12:47
@andygrove andygrove requested review from comphead and mbutrovich May 22, 2026 14:21
@andygrove andygrove marked this pull request as draft May 22, 2026 17:36
@andygrove
Copy link
Copy Markdown
Member Author

The Spark SQL changes here are replaced with #4408

@andygrove
Copy link
Copy Markdown
Member Author

will open new PR to reduce iceberg versions running on PRs

@andygrove andygrove closed this May 22, 2026
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.

1 participant