[ 
https://issues.apache.org/jira/browse/FLINK-37089?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17912242#comment-17912242
 ] 

Zakelly Lan commented on FLINK-37089:
-------------------------------------

Merge into master via:
 * 0bfbef664fcd4aee3599db1297cb9796a3d19bee
 * 78ea6ecfca214ac7bb7790a85325edc4700212b2

> Advanced scheduling for derived async state processing
> ------------------------------------------------------
>
>                 Key: FLINK-37089
>                 URL: https://issues.apache.org/jira/browse/FLINK-37089
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Runtime / Async State Processing, Runtime / Task
>            Reporter: Zakelly Lan
>            Assignee: Zakelly Lan
>            Priority: Major
>              Labels: pull-request-available
>
> Currently, there is a limit for in-flight records in async state processing. 
> However, we allow developers to initialize a new processing in-middle of 
> another. These derived processings are treated as normal ones for timers or 
> upstreaming records, which is problematic:
> * The new derived processing may increase the number of in-flight requests 
> and cause force draining when it reaches the limit. But the draining may 
> require the current processing also finish. This is a deadlock.
> * The derived processing will queue behind normal processing, which is not 
> the behavior the user wants. The derived ones should be fired right after the 
> current processing or ASAP.
> Thus, I will change the behavior in `AsyncExecutionController` and its 
> related buffer:
> * Avoid drain when creating derived processing.
> * Provide priority for the queuing processing and make derived one have 
> greater priority.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to