Zhu Zhu created FLINK-28258:
-------------------------------

             Summary: Introduce ExecutionHistory to host historical executions 
for each execution vertex
                 Key: FLINK-28258
                 URL: https://issues.apache.org/jira/browse/FLINK-28258
             Project: Flink
          Issue Type: Sub-task
          Components: Runtime / Coordination
            Reporter: Zhu Zhu
             Fix For: 1.16.0


With speculative execution, tracking prior executions in an 
{{EvictingBoundedList}} does not work. This is because when using 
{{EvictingBoundedList}} relies on the assumption that the historical executions 
are added in ascending order of attempt number successively. This is no longer 
true if speculative execution is enabled. e.g. 3 speculative execution attempts 
#1, #2, #3 are running concurrently, later #3 failed, and then #1 failed, and 
execution attempt #2 keeps running.
The broken assumption may result in exceptions in REST, job archiving and so on.
We propose to introduce an {{ExecutionHistory}} to replace 
{{EvictingBoundedList}}. It hosts the historical executions in a 
{{LinkedHashMap}} with a size bound. When the map grows beyond the size bound, 
elements are dropped from the head of the map (FIFO order).



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to