You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Ted Yu (JIRA)" <ji...@apache.org> on 2016/06/17 22:15:05 UTC

[jira] [Commented] (HBASE-16059) Region normalizer failed to trigger merge action where expected

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

Ted Yu commented on HBASE-16059:
--------------------------------

{code}
2016-06-17 20:08:11,105 DEBUG [B.fifo.QRpcServer.handler=3,queue=0,port=20000] normalizer.SimpleRegionNormalizer: ed772aa32551ebb7428597723a492c14 size = 0
2016-06-17 20:08:11,105 DEBUG [B.fifo.QRpcServer.handler=3,queue=0,port=20000] normalizer.SimpleRegionNormalizer: cfad4a764ef0f60045471e8c145d85bb size = 1
2016-06-17 20:08:11,105 DEBUG [B.fifo.QRpcServer.handler=3,queue=0,port=20000] normalizer.SimpleRegionNormalizer: 059a9a91475aaf4d7ee136bd79ab7f68 size = 4
2016-06-17 20:08:11,105 DEBUG [B.fifo.QRpcServer.handler=3,queue=0,port=20000] normalizer.SimpleRegionNormalizer: 282fc04c9e3eed6c62ce2e374f63d578 size = 4
2016-06-17 20:08:11,105 DEBUG [B.fifo.QRpcServer.handler=3,queue=0,port=20000] normalizer.SimpleRegionNormalizer: 07ad6f64a715b6225e64bb03e5ce7d19 size = 4
2016-06-17 20:08:11,105 INFO  [B.fifo.QRpcServer.handler=3,queue=0,port=20000] normalizer.SimpleRegionNormalizer: Table table_m26u7ybcz1, small region size: 0 plus its neighbor size: 1, less than the avg size 2.6, merging them
{code}
As can be seen from the debug log above, first region was empty.
This caused regionSize > 0 condition not to be met.

Patch fixes this checking.

> Region normalizer failed to trigger merge action where expected
> ---------------------------------------------------------------
>
>                 Key: HBASE-16059
>                 URL: https://issues.apache.org/jira/browse/HBASE-16059
>             Project: HBase
>          Issue Type: Bug
>          Components: master
>            Reporter: Romil Choksi
>            Assignee: Ted Yu
>              Labels: normalization
>             Fix For: 2.0.0
>
>         Attachments: 16059.v1.txt
>
>
> Region normalizer failed to trigger merge action where expected
> Steps to reproduce:
> - Pre-split the test table into 5 regions with keys 1,3,7,8
> - Insert some data for each of the split. 27K rows for regions starting with key 1, and 100K rows for each of the regions with start key 3,7 and 8
> - Scan the test table, and verify that these regions exists -  1) STARTKEY => ‘' ENDKEY => ’1’  2)  STARTKEY => ’1’ ENDKEY => ’3’
> - Turn on normalization, verify normalization switch is enabled and that normalization is true for test table
> - Run normalizer a few times
> - Scan test table again, verify that regions don’t exist anymore  1) STARTKEY => ‘' ENDKEY => ’1’  2)  STARTKEY => ’1’ ENDKEY => ’3’, but instead a new region is created with  STARTKEY => ’’ ENDKEY => ’3’
> The test now fails, with the last step failing at assertion. 
> Looking into the Master log, I see that normalization plan was computed for the test table but it decides that no normalization is needed for the test table, and that the regions look good.
> {code:title = Master.log}
> 2016-06-17 00:41:46,895 DEBUG [B.defaultRpcServer.handler=4,queue=1,port=20000] normalizer.SimpleRegionNormalizer: Computing normalization plan for table: table_zrof6ea383, number of regions: 5
> 2016-06-17 00:41:46,895 DEBUG [B.defaultRpcServer.handler=4,queue=1,port=20000] normalizer.SimpleRegionNormalizer: Table table_zrof6ea383, total aggregated regions size: 13
> 2016-06-17 00:41:46,896 DEBUG [B.defaultRpcServer.handler=4,queue=1,port=20000] normalizer.SimpleRegionNormalizer: Table table_zrof6ea383, average region size: 2.6
> 2016-06-17 00:41:46,896 DEBUG [B.defaultRpcServer.handler=4,queue=1,port=20000] normalizer.SimpleRegionNormalizer: No normalization needed, regions look good for table: table_zrof6ea383
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)