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

Jing Zhao commented on HADOOP-12950:
------------------------------------

Thanks for working on this, [~xyao]! The patch looks good to me. Some minor 
comments:
# Do you think we should only create daemon thread for the executor?
{code}
51        private static final ExecutorService EXECUTOR =
52            HadoopExecutors.newSingleThreadExecutor();
{code}
# Since ShutdownHookEntry's hashCode/equals all depend on 
ShutdownHookEntry#hook, maybe we can use a SortedMap<Hook, ShutdownHookEntry> 
in ShutdownHookManager instead of the current HashSet?
# Feels like the ShutdownHookEntry should still be kept inside of the 
ShutdownHookManager, considering it is only used there.
# Nit: 10 can be replaced by TIMEOUT_DEFAULT.
{code}
              if (!EXECUTOR.awaitTermination(10, TimeUnit.SECONDS)) {
                LOG.error("ShutdownHookManger shutdown forcefully.");
                EXECUTOR.shutdownNow();
{code}

> ShutdownHookManager should have a timeout for each of the Registered shutdown 
> hook
> ----------------------------------------------------------------------------------
>
>                 Key: HADOOP-12950
>                 URL: https://issues.apache.org/jira/browse/HADOOP-12950
>             Project: Hadoop Common
>          Issue Type: Improvement
>            Reporter: Xiaoyu Yao
>            Assignee: Xiaoyu Yao
>         Attachments: HADOOP-12950.00.patch, HADOOP-12950.01.patch
>
>
> HADOOP-8325 added a ShutdownHookManager to be used by different components 
> instead of the JVM shutdownhook. For each of the shutdown hook registered, we 
> currently don't have an upper bound for its execution time. We have seen 
> namenode failed to shutdown completely (waiting for shutdown hook to finish 
> after failover) for a long period of time, which breaks the namenode high 
> availability scenarios. This ticket is opened to allow specifying a timeout 
> value for the registered shutdown hook.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to