hbase.client.scanner.timeout.period is a timeout specifically for RPCs that come from the HBase Scanner classes (e.g. ClientScanner) while hbase.rpc.timeout is the default timeout for any RPC. I believe that the hbase.client.scanner.timeout.period is also used by the RegionServers to define the lifetime of the Lease (the cause of the LeaseException you're seeing).

Generally, when you see these kinds of exceptions while scanning data in HBase, it is just a factor of your hardware and current performance (in other words, how long it takes to read your data). I can't really give a firm answer because it is dependent on your system's performance. You should be able to approximate the performance with some back-of-the-envelope math.

Some changes like https://issues.apache.org/jira/browse/HBASE-13090 and https://issues.apache.org/jira/browse/HBASE-13333 should help reduce the need for you to tweak configuration properties in the future.

Rajeshkumar J wrote:
Hi,
      I have following property value as below

         <property>
         <name>hbase.client.scanner.timeout.period</name>
         <value>60000</value>
         </property>

         <property>
         <name>hbase.rpc.timeout</name>
         <value>60000</value>
         </property>
When scanning 30 tables in hbase(each table holds 45 million records) I got

WARN client.ScannerCallable [main]: Ignore, probably already closed
org.apache.hadoop.hbase.regionserver.LeaseException:
org.apache.hadoop.hbase.regionserver.LeaseException: lease does not exist

But when I change the value to

        <property>
         <name>hbase.client.scanner.timeout.period</name>
         <value>70000</value>
         </property>

         <property>
         <name>hbase.rpc.timeout</name>
         <value>70000</value>
         </property>
It runs successfully.
Can any one tell me the reason for this failure and also is there any
factor to calculate these property values for any data.

Reply via email to