[
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)