hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ted Yu (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-18804) Sanity check the number of regions when creating a table
Date Wed, 13 Sep 2017 15:33:00 GMT

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

Ted Yu commented on HBASE-18804:

bq. The default value of jute.maxBuffer is 4M

Deployment may have higher value for this config.
Is there a way to retrieve it ?

The default of 100k should be raised to at least 125K (4M/32)

> Sanity check the number of regions when creating a table
> --------------------------------------------------------
>                 Key: HBASE-18804
>                 URL: https://issues.apache.org/jira/browse/HBASE-18804
>             Project: HBase
>          Issue Type: Bug
>          Components: master
>    Affects Versions: 2.0.0, 1.5.0
>            Reporter: Guangxu Cheng
>            Assignee: Guangxu Cheng
>         Attachments: HBASE-18804.master.v1.patch
> A few days ago, a table was erroneously created with NUMREGIONS set to 200k which resulted
in the master down. 
> I got exceptions like:
> {code:java}
> 2017-08-17 11:10:17,970 WARN  [main-SendThread(localhost:2181)] zookeeper.ClientCnxn:
Session 0x45c9d4132c547f1 for server localhost/localhost:2181, unexpected error, closing socket
connection and attempting reconnect
> java.io.IOException: Packet len6842180 is out of range!
>         at org.apache.zookeeper.ClientCnxnSocket.readLength(ClientCnxnSocket.java:112)
>         at org.apache.zookeeper.ClientCnxnSocketNIO.doIO(ClientCnxnSocketNIO.java:79)
>         at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:366)
>         at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1081)
> {code}
> That's because a lot of regions need to assign in a short interval, and the size of the
node /hbase/region-in-transition exceeds the default value.
> We solved this problem by setting "jute.maxbuffer".
> But we can sanity check the number of regions when creating a table and reject the requests.

This message was sent by Atlassian JIRA

View raw message