Repository navigation
[#36841] Spark 4 streaming: ValidatesRunner suite for the Structured Streaming runner - #40967
Conversation
…tured Streaming runner
|
R: @Abacn |
|
Stopping reviewer notifications for this pull request: review requested by someone other than the bot, ceding control. If you'd like to restart, comment |
|
Let's use the existing https://github.com/apache/beam/blob/master/.github/workflows/beam_PostCommit_Java_ValidatesRunner_Spark4.yml since the tests are fast, most of the time spend on build that is add the structured-streaming streaming task to here if spark major version is 4: beam/runners/spark/spark_runner.gradle Line 562 in 4b5b9c8 |
| with: | ||
| persist-credentials: false | ||
| - name: Setup repository | ||
| uses: ./.github/actions/setup-action |
| - name: Setup repository | ||
| uses: ./.github/actions/setup-action | ||
| - name: Setup environment | ||
| uses: ./.github/actions/setup-environment-action |
| with: | ||
| java-version: '17' | ||
| - name: run validatesStructuredStreamingRunnerStreaming script | ||
| uses: ./.github/actions/gradle-command-self-hosted-action |
… of a separate workflow
|
Thanks, done in 65c3494. The streaming task now runs from |
Part of #36841.
This adds the streaming ValidatesRunner suite for the Spark 4 Structured Streaming runner,
:runners:spark:4:validatesStructuredStreamingRunnerStreaming. It runs as part of:runners:spark:4:validatesRunner, sobeam_PostCommit_Java_ValidatesRunner_Spark4covers it. The suite runs with--streamingand stops each pipeline after 5 idle batches. The batch and streaming tasks now share one setup inspark_runner.gradle, the effective configuration of the batch task on Spark 3 and 4 is unchanged.In streaming mode, a Flatten of no inputs is replaced by
EmptyFlattenAsCreateFactory, as Dataflow does. It has to come before the Impulse override from #40766, because the replacement expands to an Impulse.Exclusions are by category where one exists, grouped by the runner gap. Tests that fail on a gap without a category are excluded by name and cite their issue: ParDo with additional outputs #40949, Redistribute #40950, merging windows, side inputs and splittable DoFn under #36841, bounded source metrics under #32021.
Locally the suite passes with 191 tests, 0 failures and 8 skipped in about 22 minutes. Four Flatten and multiple apply tests that were excluded before now pass with the empty Flatten override and #40932. Full
:runners:spark:4:testand:runners:spark:3:testpass. The Spark 4 ValidatesRunner trigger file runs it on this PR.The CHANGES.md entry for Spark 4 streaming follows once this is approved.