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

Shroff Amrith Nayak commented on HBASE-20515:
---------------------------------------------

Additionally, I have observed that there is one shutdown hook spawned from 
`HFileArchiver#getArchiveExecutor` that is tied to the PEWorkerGroup 
ThreadGroup which can throw an `IllegalStateException` on JVM shutdown if the 
minicluster is stopped in a different lifecycle, say when test case execution 
is completed. This can cause `ApplicationShutdownHooks` (openJDK) to 
prematurely terminate potentially causing cascading errors.

 

Interested to discuss alternative solutions.

> Cleanup ProcedureExecutor#stop and #join interaction/dependency
> ---------------------------------------------------------------
>
>                 Key: HBASE-20515
>                 URL: https://issues.apache.org/jira/browse/HBASE-20515
>             Project: HBase
>          Issue Type: Task
>          Components: amv2
>            Reporter: Michael Stack
>            Priority: Major
>
> See HBASE-20169 discussion toward the end. What the discussion makes clear is 
> that there is an ordering expected around the shutdown of 
> PerformanceExecutor; first #stop must be called and then #join. In 
> multi-threaded context, this may not always happen.
> Also look at #join. It is doing harvesting and cleanup which is not what a 
> #join usually does; #join is usually more an observer than a final tidying of 
> resources.



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

Reply via email to