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

Till Rohrmann commented on FLINK-15693:
---------------------------------------

How exactly would this work [~Anglenet]? I think a {{RpcEndpoint}} uses the 
{{AkkaInvocationHandler}} to send itself messages (e.g. {{runAsync}} or when 
using the {{MainThreadExecutor}}).

> Stop receiving incoming RPC messages when RpcEndpoint is closing
> ----------------------------------------------------------------
>
>                 Key: FLINK-15693
>                 URL: https://issues.apache.org/jira/browse/FLINK-15693
>             Project: Flink
>          Issue Type: Improvement
>          Components: Runtime / Coordination
>    Affects Versions: 1.9.1, 1.10.0
>            Reporter: Till Rohrmann
>            Priority: Major
>             Fix For: 1.11.0
>
>
> When calling {{RpcEndpoint#closeAsync()}}, the system triggers 
> {{RpcEndpoint#onStop}} and transitions the endpoint into the 
> {{TerminatingState}}. In order to allow asynchronous clean up operations, the 
> main thread executor is not shut down immediately. As a side effect, the 
> {{RpcEndpoint}} still accepts incoming RPC messages from other components. 
> I think it would be cleaner to no longer accept incoming RPC messages once we 
> are in the {{TerminatingState}}. That way we would not worry about the 
> internal state of the {{RpcEndpoint}} when processing RPC messages (similar 
> to 
> [here|https://github.com/apache/flink/blob/master/flink-runtime/src/main/java/org/apache/flink/runtime/taskexecutor/TaskExecutor.java#L952]).



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to