Skip to content

[auto-merge] release/26.08 to main [skip ci] [bot] - #15486

Merged
nvauto merged 1 commit into
mainfrom
release/26.08
Aug 3, 2026
Merged

[auto-merge] release/26.08 to main [skip ci] [bot]#15486
nvauto merged 1 commit into
mainfrom
release/26.08

Conversation

@nvauto

@nvauto nvauto commented Aug 3, 2026

Copy link
Copy Markdown
Collaborator

auto-merge triggered by github actions on release/26.08 to create a PR keeping main up-to-date. If this PR is unable to be merged due to conflicts, it will remain open until manually fix.

Fixes #15349.

### Description

- Spark 4.1+ (`SPARK-52689` / `SPARK-53891`) expects DSv2 writes to pass
a `WriteSummary` into `BatchWrite.commit(messages, summary)`, but the
GPU V2 write path still called single-arg `commit(messages)`, so MERGE
row metrics never reached Iceberg/Delta committers.
- Collect MERGE metrics on `GpuMergeRowsExec`
(copied/inserted/deleted/updated and matched / not-matched-by-source
variants), build `MergeSummaryImpl` on Spark 4.1+, and commit through
versioned `GpuV2WriteCommitShims` (no-op summary path before 4.1).
- Stage MERGE row metrics in `LocalGpuMetric` per `withRetryNoSplit`
attempt and flush only after success, so a retryable GPU OOM cannot
double-count rows in the committed `WriteSummary`.
- Mix `GpuV2BatchWriteSummaryCommit` into Iceberg GPU `BatchWrite`
wrappers so the 2-arg `commit` forwards the summary to the CPU delegate
instead of the default interface method dropping it.
- Shim `Keep.context` → action tags via `GpuMergeRowsKeepShims` so
metric attribution matches Spark CPU on 4.1+.
- Validation: `mvn -s ~/.m2/settings_art.xml -Dbuildver=330
-Dcuda.version=cuda13 -DskipTests validate` SUCCESS; `mvn -s
~/.m2/settings_art.xml -f scala2.13/pom.xml -Dbuildver=400
-Dcuda.version=cuda13 -DskipTests validate` SUCCESS; `mvn -s
~/.m2/settings_art.xml -f scala2.13/pom.xml -Dbuildver=411
-Dcuda.version=cuda13 -DskipTests validate` SUCCESS; all-module
scalastyle 0 errors; unit suites `GpuMergeRowMetricsSuite` (5) and
`GpuV2WriteSummarySuite` (5) passed on buildver=411.

Known gaps (not in this PR): Append/Update/Delete write summaries,
Iceberg IT for snapshot summary.

### Checklists

Documentation
- [ ] Updated for new or modified user-facing features or behaviors
- [x] No user-facing change

Testing
- [x] Added or modified tests to cover new code paths
- [ ] Covered by existing tests
(Please provide the names of the existing tests in the PR description.)
- [ ] Not required

Performance
- [ ] Tests ran and results are added in the PR description
- [ ] Issue filed with a link in the PR description
- [x] Not required

---------

Signed-off-by: Firestarman <firestarmanllc@gmail.com>
@nvauto
nvauto merged commit 2cb69a1 into main Aug 3, 2026
1 check passed
@nvauto

nvauto commented Aug 3, 2026

Copy link
Copy Markdown
Collaborator Author

SUCCESS - auto-merge

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