Admaing commented on PR #29239:
URL: https://github.com/apache/flink/pull/29239#issuecomment-5798538284
@rkhachatryan thanks for the careful review — I verified both points in the
code and you're right on
both.
Adopted, pushed as 40e286b:
* `WatermarkOutputMultiplexer` now reports the combined status on every
update (level-based, no transition tracking), and returns early while no output
is registered, so a subtask without splits can still go idle through the main
output's activity timer.
* `WatermarksWithIdleness.onEvent()` calls `output.markActive()` when
`isIdleNow` is set, and the class Javadoc no longer claims that only a
watermark ends idleness.
* `WatermarkToDataOutput.emitWatermark()` marks the output active before the
monotonicity guard.
* The `registerNewOutput()` re-activation (FLINK-22926) is kept, as you
suggested.
Tests: I added the two subtask-idleness cases you described
(`subtaskMustNotGoIdleWhileRecordsFlowThroughItsSplits`,
`subtaskWithoutSplitsGoesIdleViaTheMainOutputTimer`) plus two along the same
lines — all splits idle ⇒ the subtask stands down, and an idle split resuming
behind the flushed watermark ⇒ active again —
as well as
`WatermarksWithIdlenessTest#testMarksActiveOnFirstEventAfterIdleness` and a
multiplexer case asserting that nothing is reported while there is no output.
With the production changes reverted to master, 10 of the new/updated cases
fail; a 21-class / 142-test watermark regression passes.
Two things to flag:
* Keeping the `registerNewOutput()` re-activation changes the event order in
the existing
`SourceOperatorEventTimeTest#testMainAndPerSplitWatermarkIdleness`:
registering a split now emits ACTIVE before that split's first record
(FLINK-22926). I updated that expectation.
* I added a release note line covering the `WatermarkToDataOutput` behaviour
change and
`WatermarksWithIdleness` being `@Public`. I cannot set the JIRA Release
Note field myself, so I asked a committer to set it on the ticket.
Could you take another look at 40e286b?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]