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

Apekshit Sharma commented on HBASE-13423:
-----------------------------------------

The failing test 
(TestRegionSplitPolicy.testIncreasingToUpperBoundRegionSplitPolicy) was changed 
2 days ago (b6756b39).
Although it doesn't seem related, my changes are certainly making it fail. It 
passes in master and fails in branch with the changes.
I don't understand why it passes in master.
According to 
[IncreasingToUpperBoundRegionSplitPolicy|https://hbase.apache.org/apidocs/org/apache/hadoop/hbase/regionserver/IncreasingToUpperBoundRegionSplitPolicy.html],
 split should happen when size is greater than 'flushSize * 2 * 2^3' whereas 
the test sets it to 'maxSplitSize * 1.025 + 1' (line 114 
[here|https://github.com/apache/hbase/blob/master/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionSplitPolicy.java#L114])
 and expects split. Shouldn't it be 'maxSplitSize * 2 +1' instead?
{code}
long maxSplitSize = 1024L;
long flushSize = maxSplitSize/8;
...
// adds 2 regions
....
Mockito.doReturn((long)(maxSplitSize * 1.025 + 1)).when(mockStore).getSize();
assertTrue(policy.shouldSplit());
{code}

Test passed when it was changed to 'maxSplitSize * 2 + 1'.



> Remove duplicate entry for hbase.regionserver.regionSplitLimit in 
> hbase-default.xml
> -----------------------------------------------------------------------------------
>
>                 Key: HBASE-13423
>                 URL: https://issues.apache.org/jira/browse/HBASE-13423
>             Project: HBase
>          Issue Type: Bug
>          Components: hbase
>            Reporter: Apekshit Sharma
>            Priority: Minor
>         Attachments: HBASE-13423-branch-1.patch, HBASE-13423.patch
>
>
> There are two entries for hbase.regionserver.regionSplitLimit in 
> hbase-default.xml
> {code:xml}
> <property>
>     <name>hbase.regionserver.regionSplitLimit</name>
>     <value>2147483647</value>
>     <description>Limit for the number of regions after which no more region
>     splitting should take place. This is not a hard limit for the number of
>     regions but acts as a guideline for the regionserver to stop splitting 
> after
>     a certain limit. Default is MAX_INT; i.e. do not block 
> splitting.</description>
> </property>
> ....
> ....
> <property>
>     <name>hbase.regionserver.regionSplitLimit</name>
>     <value>1000</value>
>     <description>
>       Limit for the number of regions after which no more region splitting 
> should take place.
>       This is not hard limit for the number of regions but acts as a 
> guideline for the regionserver
>       to stop splitting after a certain limit. Default is set to 1000.
>     </description>
> </property>
> {code}
> Since property setting it to 1000 comes later, that's the real default value 
> for now. From /conf of a master
> {code:xml}
> <property>
>   <name>hbase.regionserver.regionSplitLimit</name>
>   <value>1000</value>
>   <source>hbase-default.xml</source>
> </property>
> {code}
> Which will be right default value to keep moving forward?



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

Reply via email to