joeyutong opened a new issue, #1218:
URL: https://github.com/apache/flink-agents/issues/1218

   ## Description
   
   Track lifecycle and metric bookkeeping gaps in the JDK < 21 parallel action 
execution engine.
   
   - [ ] **Correct the listener threading contract.** `TaskLifecycleListener` 
and `ComponentExecutionListener` promise mailbox-thread callbacks, but the 
parallel engine also invokes callbacks on action workers. Document the 
execution-context contract without promising fixed mailbox-thread affinity. 
([Source](https://github.com/apache/flink-agents/blob/bd527d7fa8de9083ccdd2a98e1c4dbdef5a98138/runtime/src/main/java/org/apache/flink/agents/runtime/lifecycle/TaskLifecycleListener.java#L24-L41))
   
   - [ ] **Emit `onRecordStart` when restoring parallel execution.** The 
parallel restore path requeues unfinished tasks without notifying record start, 
while completion still emits `onRecordFinished`. Restore should preserve the 
start/finish pairing, as the serial path does. 
([Source](https://github.com/apache/flink-agents/blob/bd527d7fa8de9083ccdd2a98e1c4dbdef5a98138/runtime/src/main/java/org/apache/flink/agents/runtime/operator/ActionExecutionOperator.java#L1627-L1647))
   
   - [ ] **Restore subagent task binding after async resumption.** If action A 
waits on an async call and action B prepares or finishes, 
`BaseSubagentSetup.currentTask` becomes B or null. Resuming A restores its 
runner context but not this binding, so a subsequent subagent submission can 
use the wrong task's allocator or fail with `No prepared action task to assign 
sub-agent ids from.` 
([Source](https://github.com/apache/flink-agents/blob/bd527d7fa8de9083ccdd2a98e1c4dbdef5a98138/runtime/src/main/java/org/apache/flink/agents/runtime/operator/ActionTaskContextManager.java#L362-L399))
   
   - [ ] **Record input-run failure metrics on the parallel failure path.** An 
action failure is propagated through `Work.commit()` without calling 
`markInputRunFailed`. For a fresh input run, this misses 
`numOfInputRunsFailed`, the active-run gauge decrement, and terminal samples 
for `inputRunLatencyMs` and `inputRunProcessingLatencyMs`. 
([Source](https://github.com/apache/flink-agents/blob/bd527d7fa8de9083ccdd2a98e1c4dbdef5a98138/runtime/src/main/java/org/apache/flink/agents/runtime/operator/ActionExecutionOperator.java#L1847-L1851))
   
   - [ ] **Keep restored synthetic no-op tasks out of action metrics.** When an 
input matches no action, the parallel engine creates a synthetic no-op task. 
Restoring a checkpoint containing that queued task increments its 
`numOfPendingActionTasks`, but dequeue and completion exclude it from action 
metrics. The gauge therefore remains nonzero after completion. 
([Source](https://github.com/apache/flink-agents/blob/bd527d7fa8de9083ccdd2a98e1c4dbdef5a98138/runtime/src/main/java/org/apache/flink/agents/runtime/operator/ActionExecutionOperator.java#L1575-L1607))
   
   ## Version
   
   Source checked against `main` at `bd527d7fa8de9083ccdd2a98e1c4dbdef5a98138`.
   


-- 
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]

Reply via email to