[
https://issues.apache.org/jira/browse/HADOOP-4210?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12634310#action_12634310
]
Tsz Wo (Nicholas), SZE commented on HADOOP-4210:
------------------------------------------------
> Returns false if the this.getClass() != paramObject.getClass()
For class comparison, should we use equals(...) instead of ==? Otherwise, I am
afraid it won't work in dynamic class loading.
> Findbugs warnings are printed related to equals implementation of several
> classes
> ---------------------------------------------------------------------------------
>
> Key: HADOOP-4210
> URL: https://issues.apache.org/jira/browse/HADOOP-4210
> Project: Hadoop Core
> Issue Type: Bug
> Reporter: Suresh Srinivas
> Assignee: Suresh Srinivas
> Fix For: 0.20.0
>
> Attachments: HADOOP-4210.patch, HADOOP-4210.patch, HADOOP4210.patch
>
>
> During compilation - findbugs generates several warnings that indicates bugs
> in the implementation of equals method. One of the example of this report is:
> Bug type EQ_GETCLASS_AND_CLASS_CONSTANT (click for details)
> In class org.apache.hadoop.mapred.ID
> In method org.apache.hadoop.mapred.ID.equals(Object)
> At ID.java:[line 66]
> Value doesn't work for subtypes
> This class has an equals method that will be broken if it is inherited by
> subclasses. It compares a class literal with the class of the argument (e.g.,
> in class Foo it might check if Foo.class == o.getClass()). It is better to
> check if this.getClass() == o.getClass().
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.