[
https://issues.apache.org/jira/browse/HBASE-6907?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13557441#comment-13557441
]
Devaraj Das commented on HBASE-6907:
------------------------------------
I haven't done deep analysis of the impact of the change. But from the
description of the jira it seems like this change would affect some parts of
code... Will spend some more time and go deeper..
> KeyValue equals and compareTo methods should match
> --------------------------------------------------
>
> Key: HBASE-6907
> URL: https://issues.apache.org/jira/browse/HBASE-6907
> Project: HBase
> Issue Type: Bug
> Components: util
> Reporter: Matt Corgan
> Fix For: 0.96.0
>
>
> KeyValue.KVComparator includes the memstoreTS when comparing, however the
> KeyValue.equals() method ignores the memstoreTS.
> The Comparator interface has always specified that comparator return 0 when
> equals would return true and vice versa. Obeying that rule has been sort of
> optional in the past, but Java 7 introduces a new default collection sorting
> algorithm called Tim Sort which relies on that behavior.
> http://bugs.sun.com/view_bug.do?bug_id=6804124
> Possible problem spots:
> * there's a Collections.sort(KeyValues) in
> RedundantKVGenerator.generateTestKeyValues(..)
> * TestColumnSeeking compares two collections of KeyValues using the
> containsAll method. It is intentionally ignoring memstoreTS, so will need an
> alternative method for comparing the two collections.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira