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

Roman Leventov commented on FLINK-16365:
----------------------------------------

To find all these places, one can use `$x$.awaitTermination($y$, $z$);` 
structural search pattern in IntelliJ IDEA.

> awaitTermination() result is not checked
> ----------------------------------------
>
>                 Key: FLINK-16365
>                 URL: https://issues.apache.org/jira/browse/FLINK-16365
>             Project: Flink
>          Issue Type: Improvement
>            Reporter: Roman Leventov
>            Priority: Minor
>
> There are three places in production code where awaitTermination() result is 
> not checked: BlockingGrpcPubSubSubscriber (io.grpc.ManagedChannel), 
> PubSubSink (ManagedChannel), and FileCache (ExecutorService).
> Calling awaitTermination() without checking the result seems to make little 
> sense to me.
> If it's genuinely important to await termination, e. g. for concurrency 
> reasons, or because we are awaiting heavy resource release and if the 
> resource is not released we have a resource leak, then it seems reasonable to 
> at least check the result of awaitTermination() and log a warning if the 
> result is negative, allowing to debug potential problem in the future.
> Otherwise, if we don't really care about awaiting termination, then maybe 
> it's better to not call awaitTermination() at all.



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

Reply via email to