You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Zhu Zhu (JIRA)" <ji...@apache.org> on 2019/07/04 03:06:00 UTC

[jira] [Updated] (FLINK-12926) Main thread checking in some tests fails

     [ https://issues.apache.org/jira/browse/FLINK-12926?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Zhu Zhu updated FLINK-12926:
----------------------------
    Attachment: Execution#deploy.jpg

> 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.3#76005)