[ https://issues.apache.org/jira/browse/FLINK-15693?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17143779#comment-17143779 ]
MinWang edited comment on FLINK-15693 at 6/24/20, 11:57 AM: ------------------------------------------------------------ [~trohrmann] I think we could separate the calls from the endpoint itself such as onStop and the calls from the gateway. The internal actor can reject calls from the gateway and still accept calls from the endpoint itself when the endpoint is closing. I think the RpcEndpoint#onStop should only be called on the server side. What do you think? was (Author: anglenet): [~trohrmann] I think we could separate the calls from the endpoint itself such as onStop and the calls from the gateway. The internal actor can reject calls from the gateway and still accept calls from the endpoint itself when the endpoint is closing. What do you think? > 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)