Skip to content

[BP-2.0][FLINK-40086][runtime] Adds error handling to newly added preCompletionAction#28761

Open
cjohnson-confluent wants to merge 2 commits into
apache:release-2.0from
confluentinc:FLINK-40086-backport-2.0
Open

[BP-2.0][FLINK-40086][runtime] Adds error handling to newly added preCompletionAction#28761
cjohnson-confluent wants to merge 2 commits into
apache:release-2.0from
confluentinc:FLINK-40086-backport-2.0

Conversation

@cjohnson-confluent

Copy link
Copy Markdown
Contributor

2.0 backport for #28699

Depends on #28760 (FLINK-40003 backport). Please merge that first.

cjohnson-confluent and others added 2 commits July 15, 2026 13:36
…listeners

Execution.markFinished() and processFail() updated accumulators and
IOMetrics after transitionState(), so ExecutionStateUpdateListeners
notified inline during the transition saw null from getIOMetrics().

Add transitionToTerminalState() with a preCompletionAction callback that
runs after the state is set but before terminalStateFuture is completed
and listeners are notified. The metrics/accumulators update is passed as
this callback so both terminalStateFuture consumers and listeners observe
it. Applied to markFinished(), processFail(), completeCancelling() and
recoverExecution().

Adapted for release-2.2: DefaultExecutionGraph#registerExecutionStateUpdateListener
does not exist on this branch, so the test registers its listener at graph
construction time via TestingDefaultExecutionGraphBuilder instead of going
through a scheduler.

Co-Authored-By: Claude <noreply@anthropic.com>
(cherry picked from commit c0f774f)
(cherry picked from commit 7244dc1)
@flinkbot

flinkbot commented Jul 16, 2026

Copy link
Copy Markdown
Collaborator

CI report:

Bot commands The @flinkbot bot supports the following commands:
  • @flinkbot run azure re-run the last Azure build

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants