hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nicolas Spiegelberg (Updated) (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HBASE-4568) Make zk dump jsp response more quickly
Date Thu, 13 Oct 2011 23:44:12 GMT

     [ https://issues.apache.org/jira/browse/HBASE-4568?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Nicolas Spiegelberg updated HBASE-4568:

    Attachment: HBASE-4568.patch

please remember to attach the patch to JIRA in addition to posting to Review Board.  Hopefully,
we'll have RB or Phabricator automatically do this for us in the future.
> Make zk dump jsp response more quickly
> --------------------------------------
>                 Key: HBASE-4568
>                 URL: https://issues.apache.org/jira/browse/HBASE-4568
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Liyin Tang
>            Assignee: Liyin Tang
>         Attachments: HBASE-4568.patch
> 1) For each zk dump, currently hbase will create a zk client instance every time. 
> This is quite slow when any machines in the quorum is dead. Because it will connect to
each machine in the zk quorum again.
> <code>
> HMaster master = (HMaster)getServletContext().getAttribute(HMaster.MASTER);
> Configuration conf = master.getConfiguration();
> HBaseAdmin hbadmin = new HBaseAdmin(conf);
> HConnection connection = hbadmin.getConnection();
> ZooKeeperWatcher watcher = connection.getZooKeeperWatcher();
> </code>
> So we can simplify this:
> <code>
> HMaster master = (HMaster)getServletContext().getAttribute(HMaster.MASTER);
> ZooKeeperWatcher watcher = master.getZooKeeperWatcher();
> </code>
> 2) Also when hbase call getServerStats() for each machine in the zk quorum, it hard coded
the default time out as 1 min. 
> It would be nice to make this configurable and set it to a low time out.
> When hbase tries to connect to each machine in the zk quorum, it will create the socket,
and then set the socket time out, and read it with this time out.
> It means hbase will create a socket and connect to the zk server with 0 time out at first,
which will take a long time. 
> Because a timeout of zero is interpreted as an infinite timeout. The connection will
then block until established or an error occurs.
> 3) The recoverable zookeeper should be real exponentially backoff when there is connection
loss exception, which will give hbase much longer time window to recover from zk machine failures.

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


View raw message