hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nicolas Spiegelberg (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HBASE-3387) Pair does not deep check arrays for equality.
Date Mon, 17 Jan 2011 06:04:44 GMT

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

Nicolas Spiegelberg commented on HBASE-3387:
--------------------------------------------

This JIRA patch is a big consistency problem and should be reverted!  http://www.ibm.com/developerworks/java/library/j-jtp05273.html
 

Basically, java containers assume a.equals(b) == false if a.hashcode() != b.hashcode().  Furthermore,

byte[] a = {0,1,2}, b = {0,1,2};
false == a.equals(b)
true == Pair.newPair(a,a).equals(Pair.newPair(b,b))

Was this patch introduced to fix any bug in the existing subsystem?

> Pair does not deep check arrays for equality. 
> ----------------------------------------------
>
>                 Key: HBASE-3387
>                 URL: https://issues.apache.org/jira/browse/HBASE-3387
>             Project: HBase
>          Issue Type: Bug
>          Components: util
>    Affects Versions: 0.90.1
>         Environment: Any (discovered in Ubuntu 10.10 using TRUNK). 
>            Reporter: Jesse Yates
>            Priority: Minor
>             Fix For: 0.90.1, 0.92.0
>
>         Attachments: HBASE-3387.patch
>
>   Original Estimate: 0h
>  Remaining Estimate: 0h
>
> Pair does not deep check arrays for equality. It merely does x.equals(y) for the sent
Object. However, with any type of array this is merely going to compare the array pointers,
rather than the underlying data structure.
> It requires a rewriting of the private equals method in Pair to check for elements being
an array, then checking the underlying elements.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message