sangkyoonnam commented on PR #1224: URL: https://github.com/apache/flink-agents/pull/1224#issuecomment-6170046520
Thanks, the preparation-failure fix looks good to me. At 4089c0c2 `preparationFailureKeepsCauseAndMarksInputRunFailed` and the rest of `ActionExecutionOperatorParallelMetricsTest` pass locally on JDK 17 (5/5; the class skips itself on JDK 21, where continuations are supported). The restore case from my later comment is still open. Take the parallel engine with one owned processing key, no pending inputs and a single retained noop task. The noop `continue` skips `restoreActionTask`, leaving the task's run unidentified. On completion, `maybeFinishCurrentInput` passes the task's non-null run id to `markInputRunCompleted`, which can't consume the anonymous restored slot. I checked this with a metrics-level replay of that call order: `restoreActionTask` for the noop task or not, then `restoreActiveInputRuns(1)`, then `markInputRunCompleted` with the task's run id. With #1245's counting change and the identification call, `numOfActiveInputRuns` reads 1 after restore and 0 after completion. Without the call, as in this PR, it stays at 1 after completion even with #1245. Could `BuiltInMetrics` expose the existing `BuiltInInputRunMetrics.identifyRestoredActiveInputRun`, with the restore loop calling it for the noop task before the `continue` and still skipping its action-level metrics? If you'd rather leave it to #1245, I can handle it there. -- 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]
