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

Zhu Zhu commented on FLINK-12926:
---------------------------------

Yes. For the issue 2 listed above, this fix can be help to find out current 
violated cases and avoid future misuse of 
ComponentMainThreadExecutorServiceAdapter(TestingComponentMainThreadExecutorServiceAdapter
 is merged with ComponentMainThreadExecutorServiceAdapter in a late PR).  

 

> Main thread checking in some tests fails
> ----------------------------------------
>
>                 Key: FLINK-12926
>                 URL: https://issues.apache.org/jira/browse/FLINK-12926
>             Project: Flink
>          Issue Type: Bug
>          Components: Runtime / Coordination, Tests
>    Affects Versions: 1.9.0
>            Reporter: Zhu Zhu
>            Priority: Major
>         Attachments: Execution#deploy.jpg, mainThreadCheckFailure.log
>
>
> Currently all JM side job changing actions are expected to be taken in 
> JobMaster main thread.
> In current Flink tests, many cases tend to use the test main thread as the JM 
> main thread. This can lead to 2 issues:
> 1. TestingComponentMainThreadExecutorServiceAdapter is a direct executor, so 
> if it is invoked from any other thread, it will break the main thread 
> checking and fail the submitted action (as in the attached log 
> [^mainThreadCheckFailure.log])
> 2. The test main thread does not support other actions queued in its 
> executor, as the test will end once the current test thread action(the 
> current running test body) is done
>  
> In my observation, most cases which starts 
> ExecutionGraph.scheduleForExecution() will encounter this issue. Cases 
> include ExecutionGraphRestartTest, FailoverRegionTest, 
> ConcurrentFailoverStrategyExecutionGraphTest, GlobalModVersionTest, 
> ExecutionGraphDeploymentTest, etc.
>  
> One solution in my mind is to create a ScheduledExecutorService for those 
> tests, use it as the main thread and run the test body in this thread.
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

Reply via email to