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