[
https://issues.apache.org/jira/browse/FLINK-6319?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15974260#comment-15974260
]
Till Rohrmann edited comment on FLINK-6319 at 4/19/17 7:50 AM:
---------------------------------------------------------------
I totally understand the reasoning because you don't want a random timer task
halting the shut down process of a {{Task}}. But this would then mean that we
cannot guarantee that the {{LocalBufferPool}} is only shut down after the
latency marker emission timer task has been completed (even with a small
timeout this could still happen, but is much less likely).
was (Author: till.rohrmann):
This would then mean that we cannot guarantee that the {{LocalBufferPool}} is
only shut down after the latency marker emission timer task has been completed
(even with a small timeout this could still happen, but is much less likely).
> Add timeout when shutting SystemProcessingTimeService down
> ----------------------------------------------------------
>
> Key: FLINK-6319
> URL: https://issues.apache.org/jira/browse/FLINK-6319
> Project: Flink
> Issue Type: Improvement
> Components: Local Runtime
> Affects Versions: 1.3.0
> Reporter: Till Rohrmann
> Priority: Minor
>
> A user noted that we simply call {{shutdownNow}} on the
> {{SystemProcessingTimeService's}} {{ScheduledThreadpoolExecutor}} when
> calling {{SystemProcessingTimeService.shutdownService}}. {{shutdowNow}} will
> halt all waiting tasks but it won't wait until the currently running tasks
> have been completed. This can lead to unwanted runtime behaviours such as
> wrong termination orders when shutting down tasks (as reported in
> https://issues.apache.org/jira/browse/FLINK-4973?focusedCommentId=15965884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15965884).
> I propose to add a small timeout to wait for currently running tasks to
> complete. Even though this problem cannot be completely solved since timer
> tasks might take longer than the specified timeout, a timeout for waiting for
> running tasks to complete will mitigate the problem.
> We can do this by calling {{timerServicer.awaitTermination(timeout,
> timeoutUnit);}} after the {{shutdowNow}} call.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)