You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Lars George (JIRA)" <ji...@apache.org> on 2011/01/31 10:24:11 UTC

[jira] Commented: (HBASE-3492) NPE while splitting table with empty column family store

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

Lars George commented on HBASE-3492:
------------------------------------

Hmm, after the split I tried to split again and got 

{code}
hbase(main):011:0> split 'testtable'

ERROR: org.apache.hadoop.ipc.RemoteException: org.apache.hadoop.hbase.NotServingRegionException: Region is not online: testtable,row-mdc,1296464923560.2ffc022de647c6b41552b971d067cbcf.
        at org.apache.hadoop.hbase.regionserver.HRegionServer.getRegion(HRegionServer.java:2376)
        at org.apache.hadoop.hbase.regionserver.HRegionServer.splitRegion(HRegionServer.java:2196)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        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:309)
        at org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:1057)
{code}

and the logs give the same NPE

{code}
2011-01-31 10:18:43,598 INFO org.apache.hadoop.hbase.regionserver.HRegion: Starting compaction on region testtable,,1296464923560.4712495ddd39cae8c090348acc5d9aa7.
2011-01-31 10:18:43,598 DEBUG org.apache.hadoop.hbase.regionserver.CompactSplitThread: Compaction requested for testtable,,1296464923560.4712495ddd39cae8c090348acc5d9aa7. because User-triggered split; priority=1, compaction queue size=0
2011-01-31 10:18:43,598 INFO org.apache.hadoop.hbase.regionserver.HRegion: aborted compaction on region testtable,,1296464923560.4712495ddd39cae8c090348acc5d9aa7. after 0sec
2011-01-31 10:18:43,598 ERROR org.apache.hadoop.hbase.regionserver.CompactSplitThread: Compaction failed for region testtable,,1296464923560.4712495ddd39cae8c090348acc5d9aa7.
java.lang.NullPointerException
        at org.apache.hadoop.hbase.regionserver.Store.checkSplit(Store.java:1367)
        at org.apache.hadoop.hbase.regionserver.Store.compact(Store.java:633)
        at org.apache.hadoop.hbase.regionserver.HRegion.compactStores(HRegion.java:793)
        at org.apache.hadoop.hbase.regionserver.CompactSplitThread.run(CompactSplitThread.java:81)
{code}

And as before, the region that failed had no store in "cf2" yet:

{code}
larsgeorge@de1-app-mbp-2:~$ ll -R /tmp/hbase-larsgeorge/hbase/testtable/
total 0
drwxr-xr-x  5 larsgeorge  wheel  170 Jan 31 10:19 .
drwxr-xr-x  9 larsgeorge  wheel  306 Jan 31 09:19 ..
drwxr-xr-x  7 larsgeorge  wheel  238 Jan 31 10:08 4712495ddd39cae8c090348acc5d9aa7
drwxr-xr-x  7 larsgeorge  wheel  238 Jan 31 10:18 5f083c641da708244de17443b88d8df8
drwxr-xr-x  7 larsgeorge  wheel  238 Jan 31 10:18 f3b822c1e31442a0de850d1c2aa5ccec

/tmp/hbase-larsgeorge/hbase/testtable//4712495ddd39cae8c090348acc5d9aa7:
total 16
drwxr-xr-x  7 larsgeorge  wheel   238 Jan 31 10:08 .
drwxr-xr-x  5 larsgeorge  wheel   170 Jan 31 10:19 ..
-rw-r--r--  1 larsgeorge  wheel    20 Jan 31 10:08 ..regioninfo.crc
-rwxrwxrwx  1 larsgeorge  wheel  1114 Jan 31 10:08 .regioninfo
drwxr-xr-x  2 larsgeorge  wheel    68 Jan 31 10:08 .tmp
drwxr-xr-x  4 larsgeorge  wheel   136 Jan 31 10:08 cf1
drwxr-xr-x  2 larsgeorge  wheel    68 Jan 31 10:08 cf2

/tmp/hbase-larsgeorge/hbase/testtable//4712495ddd39cae8c090348acc5d9aa7/.tmp:
total 0
drwxr-xr-x  2 larsgeorge  wheel   68 Jan 31 10:08 .
drwxr-xr-x  7 larsgeorge  wheel  238 Jan 31 10:08 ..

/tmp/hbase-larsgeorge/hbase/testtable//4712495ddd39cae8c090348acc5d9aa7/cf1:
total 528
drwxr-xr-x  4 larsgeorge  wheel     136 Jan 31 10:08 .
drwxr-xr-x  7 larsgeorge  wheel     238 Jan 31 10:08 ..
-rw-r--r--  1 larsgeorge  wheel    2060 Jan 31 10:08 .6274767763783646503.crc
-rwxrwxrwx  1 larsgeorge  wheel  262639 Jan 31 10:08 6274767763783646503

/tmp/hbase-larsgeorge/hbase/testtable//4712495ddd39cae8c090348acc5d9aa7/cf2:
total 0
drwxr-xr-x  2 larsgeorge  wheel   68 Jan 31 10:08 .
drwxr-xr-x  7 larsgeorge  wheel  238 Jan 31 10:08 ..

/tmp/hbase-larsgeorge/hbase/testtable//5f083c641da708244de17443b88d8df8:
total 16
drwxr-xr-x  7 larsgeorge  wheel   238 Jan 31 10:18 .
drwxr-xr-x  5 larsgeorge  wheel   170 Jan 31 10:19 ..
-rw-r--r--  1 larsgeorge  wheel    20 Jan 31 10:18 ..regioninfo.crc
-rwxrwxrwx  1 larsgeorge  wheel  1128 Jan 31 10:18 .regioninfo
drwxr-xr-x  2 larsgeorge  wheel    68 Jan 31 10:18 .tmp
drwxr-xr-x  4 larsgeorge  wheel   136 Jan 31 10:18 cf1
drwxr-xr-x  4 larsgeorge  wheel   136 Jan 31 10:18 cf2

/tmp/hbase-larsgeorge/hbase/testtable//5f083c641da708244de17443b88d8df8/.tmp:
total 0
drwxr-xr-x  2 larsgeorge  wheel   68 Jan 31 10:18 .
drwxr-xr-x  7 larsgeorge  wheel  238 Jan 31 10:18 ..

/tmp/hbase-larsgeorge/hbase/testtable//5f083c641da708244de17443b88d8df8/cf1:
total 344
drwxr-xr-x  4 larsgeorge  wheel     136 Jan 31 10:18 .
drwxr-xr-x  7 larsgeorge  wheel     238 Jan 31 10:18 ..
-rw-r--r--  1 larsgeorge  wheel    1336 Jan 31 10:18 .6042144040116038351.crc
-rwxrwxrwx  1 larsgeorge  wheel  169667 Jan 31 10:18 6042144040116038351

/tmp/hbase-larsgeorge/hbase/testtable//5f083c641da708244de17443b88d8df8/cf2:
total 16
drwxr-xr-x  4 larsgeorge  wheel  136 Jan 31 10:18 .
drwxr-xr-x  7 larsgeorge  wheel  238 Jan 31 10:18 ..
-rw-r--r--  1 larsgeorge  wheel   12 Jan 31 10:18 .1596755727779851952.crc
-rwxrwxrwx  1 larsgeorge  wheel  387 Jan 31 10:18 1596755727779851952

/tmp/hbase-larsgeorge/hbase/testtable//f3b822c1e31442a0de850d1c2aa5ccec:
total 16
drwxr-xr-x  7 larsgeorge  wheel   238 Jan 31 10:18 .
drwxr-xr-x  5 larsgeorge  wheel   170 Jan 31 10:19 ..
-rw-r--r--  1 larsgeorge  wheel    20 Jan 31 10:18 ..regioninfo.crc
-rwxrwxrwx  1 larsgeorge  wheel  1142 Jan 31 10:18 .regioninfo
drwxr-xr-x  2 larsgeorge  wheel    68 Jan 31 10:18 .tmp
drwxr-xr-x  4 larsgeorge  wheel   136 Jan 31 10:18 cf1
drwxr-xr-x  2 larsgeorge  wheel    68 Jan 31 10:18 cf2

/tmp/hbase-larsgeorge/hbase/testtable//f3b822c1e31442a0de850d1c2aa5ccec/.tmp:
total 0
drwxr-xr-x  2 larsgeorge  wheel   68 Jan 31 10:18 .
drwxr-xr-x  7 larsgeorge  wheel  238 Jan 31 10:18 ..

/tmp/hbase-larsgeorge/hbase/testtable//f3b822c1e31442a0de850d1c2aa5ccec/cf1:
total 272
drwxr-xr-x  4 larsgeorge  wheel     136 Jan 31 10:18 .
drwxr-xr-x  7 larsgeorge  wheel     238 Jan 31 10:18 ..
-rw-r--r--  1 larsgeorge  wheel    1036 Jan 31 10:18 .2622660282527981793.crc
-rwxrwxrwx  1 larsgeorge  wheel  131479 Jan 31 10:18 2622660282527981793

/tmp/hbase-larsgeorge/hbase/testtable//f3b822c1e31442a0de850d1c2aa5ccec/cf2:
total 0
drwxr-xr-x  2 larsgeorge  wheel   68 Jan 31 10:18 .
drwxr-xr-x  7 larsgeorge  wheel  238 Jan 31 10:18 ..
{code}

> NPE while splitting table with empty column family store
> --------------------------------------------------------
>
>                 Key: HBASE-3492
>                 URL: https://issues.apache.org/jira/browse/HBASE-3492
>             Project: HBase
>          Issue Type: Bug
>          Components: regionserver
>    Affects Versions: 0.90.0
>            Reporter: Lars George
>            Priority: Minor
>
> I did a simple test on trunk where I create a table (after wiping the local /tmp/hbase-<username>):
> {code}
> hbase(main):001:0> create 'testtable', 'cf1', 'cf2'                                                                                                  
> {code}
> Then I inserted 17k rows:
> {code}
> hbase(main):002:0> for i in 'a'..'z' do for j in 'a'..'z' do for k in 'a'..'z' do put 'testtable', "row-#{i}#{j}#{k}", "cf1:#{k}", "#{k}" end end end
> {code}
> and called 
> {code}
> hbase(main):003:0> split 'testttable'
> {code}
> and the logs gave this NPE and _no_ split was performed:
> {code}
> 2011-01-31 10:06:38,534 DEBUG org.apache.hadoop.hbase.regionserver.HRegion: Started memstore flush for testtable,,1296461957099.2528e23534565a83e2c8590d33f3a47c., current region memstore size 3.5m
> 2011-01-31 10:06:38,575 DEBUG org.apache.hadoop.hbase.regionserver.HRegion: Finished snapshotting, commencing flushing stores
> 2011-01-31 10:06:38,856 INFO org.apache.hadoop.hbase.regionserver.Store: Renaming flushed file at file:/tmp/hbase-larsgeorge/hbase/testtable/2528e23534565a83e2c8590d33f3a47c/.tmp/5265602271926296451 to file:/tmp/hbase-larsgeorge/hbase/testtable/2528e23534565a83e2c8590d33f3a47c/cf1/5349044325262044918
> 2011-01-31 10:06:38,861 INFO org.apache.hadoop.hbase.regionserver.Store: Added file:/tmp/hbase-larsgeorge/hbase/testtable/2528e23534565a83e2c8590d33f3a47c/cf1/5349044325262044918, entries=17576, sequenceid=17588, memsize=3.5m, filesize=549.9k
> 2011-01-31 10:06:38,863 INFO org.apache.hadoop.hbase.regionserver.HRegion: Finished memstore flush of ~3.5m for region testtable,,1296461957099.2528e23534565a83e2c8590d33f3a47c. in 328ms, sequenceid=17588, compaction requested=false
> 2011-01-31 10:06:38,869 INFO org.apache.hadoop.hbase.regionserver.HRegion: Starting compaction on region testtable,,1296461957099.2528e23534565a83e2c8590d33f3a47c.
> 2011-01-31 10:06:38,870 INFO org.apache.hadoop.hbase.regionserver.HRegion: aborted compaction on region testtable,,1296461957099.2528e23534565a83e2c8590d33f3a47c. after 0sec
> 2011-01-31 10:06:38,872 ERROR org.apache.hadoop.hbase.regionserver.CompactSplitThread: Compaction failed for region testtable,,1296461957099.2528e23534565a83e2c8590d33f3a47c.
> java.lang.NullPointerException
>         at org.apache.hadoop.hbase.regionserver.Store.checkSplit(Store.java:1367)
>         at org.apache.hadoop.hbase.regionserver.Store.compact(Store.java:633)
>         at org.apache.hadoop.hbase.regionserver.HRegion.compactStores(HRegion.java:793)
>         at org.apache.hadoop.hbase.regionserver.CompactSplitThread.run(CompactSplitThread.java:81)
> 2011-01-31 10:06:38,873 DEBUG org.apache.hadoop.hbase.regionserver.CompactSplitThread: Compaction requested for testtable,,1296461957099.2528e23534565a83e2c8590d33f3a47c. because User-triggered split; priority=1, compaction queue size=0
> {code}
> I added a row with data in cf2:
> {code}
> hbase(main):005:0> put 'testtable', 'row1', 'cf2', 'test1'                                                                                           
> {code}
> and the tried to split the table again like above and now it worked.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira