On Mon, Dec 12, 2011 at 11:52 PM, Yves Langisch <[email protected]> wrote:
> Hi,
>
> from time to time I get a NPE on my regionserver. Apparently it's occurring
> while obtaining a row lock:
>
> ---
> 2011-12-13 02:00:19,582 DEBUG org.apache.hadoop.hbase.io.hfile.LruBlockCache:
> Block cache LRU eviction completed; freed=39.59 MB, total=296.26 MB,
> single=164.82 MB, multi=167.62 MB, memory=42.16 KB
> 2011-12-13 02:00:20,365 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)
Any chance you are passing a null lockid Yves?
See below:
2005 protected long addRowLock(Integer r, HRegion region)
2006 throws LeaseStillHeldException {
2007 long lockId = -1L;
2008 lockId = rand.nextLong();
2009 String lockName = String.valueOf(lockId);
2010 rowlocks.put(lockName, r);
2011 this.leases.createLease(lockName, new
RowLockListener(lockName, region));
2012 return lockId;
2013 }
St.Ack