[
https://issues.apache.org/jira/browse/HBASE-19532?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16295373#comment-16295373
]
Ted Yu commented on HBASE-19532:
--------------------------------
bq. When left is not meta and right is meta, +1 is returned - this keeps
symmetry with the above.
See the javadoc
https://docs.oracle.com/javase/7/docs/api/java/util/Comparator.html#compare(T,%20T)
:
bq. The implementor must ensure that sgn(compare(x, y)) == -sgn(compare(y, x))
for all x and y.
> AssignProcedure#COMPARATOR may produce incorrect sort order
> -----------------------------------------------------------
>
> Key: HBASE-19532
> URL: https://issues.apache.org/jira/browse/HBASE-19532
> Project: HBase
> Issue Type: Bug
> Reporter: Ted Yu
> Assignee: Ted Yu
> Priority: Critical
> Fix For: 2.0.0-beta-1
>
> Attachments: 19532.v1.txt, 19532.v2.txt
>
>
> The intention of AssignProcedure#COMPARATOR is to put the regions in the
> following order:
> meta regions
> system table regions
> user table regions
> However, the current implementation may produce incorrect sort order.
> With the modified test, the test fails with:
> {code}
> testComparatorWithMetas(org.apache.hadoop.hbase.master.snapshot.TestAssignProcedure)
> Time elapsed: 0.038 sec <<< FAILURE!
> junit.framework.AssertionFailedError
> at
> org.apache.hadoop.hbase.master.snapshot.TestAssignProcedure.testComparatorWithMetas(TestAssignProcedure.java:88)
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)