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

Roman Leventov commented on FLINK-16503:
----------------------------------------

[~tison] ScheduledThreadPoolExecutor uses a priority queue instead of a simple 
queue like ThreadPoolExecutor, which results in higher memory usage for stored 
jobs in the queue and longer submit() and dequeue.

> Don't assign ScheduledExecutorService into variables of ExecutorService or 
> Executor types
> -----------------------------------------------------------------------------------------
>
>                 Key: FLINK-16503
>                 URL: https://issues.apache.org/jira/browse/FLINK-16503
>             Project: Flink
>          Issue Type: Improvement
>            Reporter: Roman Leventov
>            Priority: Minor
>
> There is an unnecessary efficiency cost to assigning ScheduledExecutorService 
> (typically, ScheduledThreadPoolExecutor) into variables of ExecutorService or 
> Executor types.
> Currently, there is one such occurrence in production code, in 
> TaskManagerRunner, and three more in tests.
> They could be found using IntelliJ's Structural search pattern (and 
> Structural Search inspection):
> {{$x$ = $y$;}}
> Where the Type of {{$x$}} is set to {{ExecutorService|Executor}} ("within 
> type hierarchy" checkbox is off), and the Type of {{$y$}} is set to 
> {{ScheduledThreadPoolExecutor|ForkJoinPool}} ("within type hierarchy" 
> checkbox is on).
>  



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

Reply via email to