[
https://issues.apache.org/jira/browse/HBASE-5249?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Benoit Sigoure updated HBASE-5249:
----------------------------------
Component/s: regionserver
Description:
After acquiring an explicit row lock, if one attempts to send {{Put}} after the
row lock has expired, an NPE is triggered in the RegionServer, instead of
throwing an {{UnknownRowLockException}} back to the client.
{code}
2012-01-20 17:09:54,074 ERROR
org.apache.hadoop.hbase.regionserver.HRegionServer: Error obtaining
row lock (fsOk: true)
java.lang.NullPointerException
at java.util.concurrent.ConcurrentHashMap.put(ConcurrentHashMap.java:881)
at
org.apache.hadoop.hbase.regionserver.HRegionServer.addRowLock(HRegionServer.java:2313)
at
org.apache.hadoop.hbase.regionserver.HRegionServer.lockRow(HRegionServer.java:2299)
at sun.reflect.GeneratedMethodAccessor15.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.WritableRpcEngine$Server.call(WritableRpcEngine.java:364)
at
org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:1327)
It happened only once out of thousands of RPCs that grabbed and
released a row lock.
{code}
was:
See
http://search-hadoop.com/m/ZTJxL1S7Hq61/Error+obtaining+row+lock+%2528fsOk%253A+true%2529&subj=Re+NPE+while+obtaining+row+lock
Benoit just ran into this too testing tsdb against 0.92:
{code}
2012-01-20 17:09:54,074 ERROR
org.apache.hadoop.hbase.regionserver.HRegionServer: Error obtaining
row lock (fsOk: true)
java.lang.NullPointerException
at java.util.concurrent.ConcurrentHashMap.put(ConcurrentHashMap.java:881)
at
org.apache.hadoop.hbase.regionserver.HRegionServer.addRowLock(HRegionServer.java:2313)
at
org.apache.hadoop.hbase.regionserver.HRegionServer.lockRow(HRegionServer.java:2299)
at sun.reflect.GeneratedMethodAccessor15.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.WritableRpcEngine$Server.call(WritableRpcEngine.java:364)
at
org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:1327)
It happened only once out of thousands of RPCs that grabbed and
released a row lock.
{code}
Affects Version/s: 0.92.0
Summary: Using a stale explicit row lock in a Put triggers an NPE
(was: NPE getting a rowlock, 'Error obtaining row lock (fsOk: true)')
> Using a stale explicit row lock in a Put triggers an NPE
> --------------------------------------------------------
>
> Key: HBASE-5249
> URL: https://issues.apache.org/jira/browse/HBASE-5249
> Project: HBase
> Issue Type: Bug
> Components: regionserver
> Affects Versions: 0.92.0
> Reporter: stack
> Assignee: stack
> Priority: Minor
> Fix For: 0.92.1
>
>
> After acquiring an explicit row lock, if one attempts to send {{Put}} after
> the row lock has expired, an NPE is triggered in the RegionServer, instead of
> throwing an {{UnknownRowLockException}} back to the client.
> {code}
> 2012-01-20 17:09:54,074 ERROR
> org.apache.hadoop.hbase.regionserver.HRegionServer: Error obtaining
> row lock (fsOk: true)
> java.lang.NullPointerException
> at
> java.util.concurrent.ConcurrentHashMap.put(ConcurrentHashMap.java:881)
> at
> org.apache.hadoop.hbase.regionserver.HRegionServer.addRowLock(HRegionServer.java:2313)
> at
> org.apache.hadoop.hbase.regionserver.HRegionServer.lockRow(HRegionServer.java:2299)
> at sun.reflect.GeneratedMethodAccessor15.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.WritableRpcEngine$Server.call(WritableRpcEngine.java:364)
> at
> org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:1327)
> It happened only once out of thousands of RPCs that grabbed and
> released a row lock.
> {code}
--
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