hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lars Hofhansl (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-5320) Create client API to handle HBase maintenance gracefully
Date Thu, 23 Aug 2012 04:22:42 GMT

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

Lars Hofhansl commented on HBASE-5320:
--------------------------------------

There are many ways to skin this cat (although I hate this expression :) ).

One of the simplest is to simply allow the client to fail fast if the cluster is down (for
example by reacting to ConnectionRefused conditions - which means the host was reachable,
but nothing was listening on the port). I created and fixed some jira around this. But there
is still room for improvement, especially in the ZK client!

Similar to this would be the circuit breaker design.

Another option is what Mikhail describes: An extra API to detect whether the cluster is up
or not (and actually that would be needed also for the circuit breaker, since it needs a way
to detect this condition).

Asynchronous handling is difficult when the client is running in an AppServer, which itself
is driven by (say) web requests. One can do comet style request parking and replay, but that
goes only so far.

That asynchronous snippet is nice, it, too, does require client side that can reliably detect
an unavailable cluster while avoiding false down-indicators.

                
> Create client API to handle HBase maintenance gracefully
> --------------------------------------------------------
>
>                 Key: HBASE-5320
>                 URL: https://issues.apache.org/jira/browse/HBASE-5320
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Mikhail Bautin
>            Assignee: Mikhail Bautin
>            Priority: Minor
>
> When we do HBase cluster maintenance, we typically have to manually stop or disable the
client temporarily. It would be nice to have a way for the client to find out that HBase in
undergoing maintenance through an appropriate API and gracefully handle it on its own.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message