You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@hbase.apache.org by Oleg Ruchovets <or...@gmail.com> on 2012/07/13 09:59:17 UTC

LeaseException

Hi ,
 running scan job against hbase I got such exceptions:


   org.apache.hadoop.hbase.regionserver.LeaseException:
org.apache.hadoop.hbase.regionserver.LeaseException: lease
'4926582861878965506' does not exist
        at
org.apache.hadoop.hbase.regionserver.Leases.removeLease(Leases.java:230)
        at
org.apache.hadoop.hbase.regionserver.HRegionServer.next(HRegionServer.java:1879)
        at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at
org.apache.hadoop.hbase.ipc.HBaseRPC$Server.call(HBaseRPC.java:570)
        at
org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:1039)

        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
        at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
        at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
        at
org.apache.hadoop.hbase.RemoteExceptionHandler.decodeRemoteException(RemoteExceptionHandler.java:96)
        at
org.apache.hadoop.hbase.client.ScannerCallable.call(ScannerCallable.java:83)
        at
org.apache.hadoop.hbase.client.ScannerCallable.call(ScannerCallable.java:38)

It looks like I need to change such parameters:
http://www.nosql.se/tags/hbase-rpc-timeout/<https://by2prd0810.outlook.com/owa/redir.aspx?C=VcO9A2LF30O-wtPJHaVRvqE9UWFiNM8IjD6Wz2v0zXgyF9zVTFudYG9uf2fTzo-twOrlK2wI6wk.&URL=http%3a%2f%2fwww.nosql.se%2ftags%2fhbase-rpc-timeout%2f>

 <property>
    <name>hbase.regionserver.lease.period</name>
    <value>900000</value> <!-- 900 000, 15 minutes -->
  </property>
  <property>
    <name>hbase.rpc.timeout</name>
    <value>900000>/value> <!-- 15 minutes -->
  </property>


Questions:

  1) Am I write that increasing these parameters it is the way to
resolve the Issue of LeaseExceptions?

  2) How this issue is depend on scan *cache size*. I mean defining
bigger cache size : does it mean that it takes more time to process
and as a result I get LeaseException?


Thanks in Advance

Oleg.

Re: LeaseException

Posted by Oleg Ruchovets <or...@gmail.com>.
Hi ,

Thank you for responce. Can you please point me on issue which was resolved
in 0.92. We use CDH3U3 cloudera with hbase 0.90.4?

I run a lot of tests and increasing parameters to 900000 resolve the issue.

        conf.set("hbase.regionserver.lease.period" , "900000");
        conf.set("hbase.rpc.timeout" , "900000");
I still have a questions:

1) Do I need to change hbase.rpc.timeout value if I
change hbase.regionserver.lease.period?

2) 900000 (15 minutes)  it is quite alot of time , so what is the PENALTY
 of  configuring lease period and rpc timeout  to bigger value?

Thanks in advance

Re: LeaseException

Posted by Daniel Iancu <da...@1and1.ro>.
Hi Oleg
Normally, if your client does not process rows fast enough you should 
get a UnknownScannerException. A higher cache value means a higher time 
between two next() operations (that renew the lease) so a higher chance 
to get a USE. Try to optimize the row processing in the client and lower 
the cache value...
But, from what I've seen (not 100% sure), if you get an exception at

Leases.removeLease(Leases.java:230)

then it suspect you hit an old problem of versions before 0.92 
(something to do with a slow RS internal scanner).
Try to upgrade in this case, we didn't see that exception after the upgrade.

Regards
Daniel


On 07/13/2012 10:59 AM, Oleg Ruchovets wrote:
> Hi ,
>   running scan job against hbase I got such exceptions:
>
>
>     org.apache.hadoop.hbase.regionserver.LeaseException:
> org.apache.hadoop.hbase.regionserver.LeaseException: lease
> '4926582861878965506' does not exist
>          at
> org.apache.hadoop.hbase.regionserver.Leases.removeLease(Leases.java:230)
>          at
> org.apache.hadoop.hbase.regionserver.HRegionServer.next(HRegionServer.java:1879)
>          at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
>          at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>          at java.lang.reflect.Method.invoke(Method.java:597)
>          at
> org.apache.hadoop.hbase.ipc.HBaseRPC$Server.call(HBaseRPC.java:570)
>          at
> org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:1039)
>
>          at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method)
>          at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>          at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>          at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>          at
> org.apache.hadoop.hbase.RemoteExceptionHandler.decodeRemoteException(RemoteExceptionHandler.java:96)
>          at
> org.apache.hadoop.hbase.client.ScannerCallable.call(ScannerCallable.java:83)
>          at
> org.apache.hadoop.hbase.client.ScannerCallable.call(ScannerCallable.java:38)
>
> It looks like I need to change such parameters:
> http://www.nosql.se/tags/hbase-rpc-timeout/<https://by2prd0810.outlook.com/owa/redir.aspx?C=VcO9A2LF30O-wtPJHaVRvqE9UWFiNM8IjD6Wz2v0zXgyF9zVTFudYG9uf2fTzo-twOrlK2wI6wk.&URL=http%3a%2f%2fwww.nosql.se%2ftags%2fhbase-rpc-timeout%2f>
>
>   <property>
>      <name>hbase.regionserver.lease.period</name>
>      <value>900000</value> <!-- 900 000, 15 minutes -->
>    </property>
>    <property>
>      <name>hbase.rpc.timeout</name>
>      <value>900000>/value> <!-- 15 minutes -->
>    </property>
>
>
> Questions:
>
>    1) Am I write that increasing these parameters it is the way to
> resolve the Issue of LeaseExceptions?
>
>    2) How this issue is depend on scan *cache size*. I mean defining
> bigger cache size : does it mean that it takes more time to process
> and as a result I get LeaseException?
>
>
> Thanks in Advance
>
> Oleg.