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

stack edited comment on HBASE-19834 at 1/22/18 11:20 PM:
---------------------------------------------------------

{quote}One difficulty is that the master main thread can get hung-up by the 
client retries 
{quote}
In the bulk of the cases, we should be ok. The incoming handler is a distinct 
thread apart from the Server main thread and it can do the kill; see patch on 
HBASE-19838 "Can not shutdown backup master cleanly when it has already tried 
to become the active master" The way it works is that all hosted clients share 
the Server Connection; the incoming shutdown handler calls a close on the 
Connection. That should be enough to shutdown ongoing client RPCs out of the 
Server.


was (Author: stack):
{quote}One difficulty is that the master main thread can get hung-up by the 
client retries 
{quote}
In the bulk of the cases, we should be ok. The incoming handler is a distinct 
thread apart from the Server main thread and it can do the kill; see patch on 
HBASE-19838 "Can not shutdown backup master cleanly when it has already tried 
to become the active master"

> Signalling server-hosted-clients to abort retries
> -------------------------------------------------
>
>                 Key: HBASE-19834
>                 URL: https://issues.apache.org/jira/browse/HBASE-19834
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: stack
>            Priority: Major
>             Fix For: 2.0.0-beta-2
>
>
> A few recent flakey tests have been variations on the server-hosted-client 
> retrying against a server or region that is never going to show up – usually 
> because cluster is being shutdown. One example is client stuck, retrying to 
> update hbase:meta with change in region or table state but hbase:meta is 
> down. Another is HBASE-19794 where the test hangs because backup Master is 
> trying to become active and as part of the startup, it is trying to read 
> table state from hbase:meta but hbase:meta is not available; it has been put 
> down as part of the cluster shutdown.
> One difficulty is that the master main thread can get hung-up by the client 
> retries (in some cases the client retries are in-lined with the main thread 
> so it is 'blocked'); it is no longer available to receive cluster shutdown or 
> other event types (e.g. see HBASE-19794). Some of our startup needs to be 
> refactored moved into our run method rather than done as some big 
> single-threaded startup as happens now in Master. We need this also for the 
> HBASE-19831 work.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to