[
https://issues.apache.org/jira/browse/HDFS-9522?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15058317#comment-15058317
]
John Zhuge commented on HDFS-9522:
----------------------------------
There is a bug in DiffReportEntry.hashCode(). According to [Implementing
hashCode|http://www.javapractices.com/topic/TopicAction.do?Id=28]:
* if a class overrides equals, it must override hashCode
* when they are both overridden, equals and hashCode must use the same set of
fields
DiffReportEntry.equals() uses field "type", but DiffReportEntry.hashCode()
doesn't.
> Cleanup o.a.h.hdfs.protocol.SnapshotDiffReport$DiffReportEntry
> --------------------------------------------------------------
>
> Key: HDFS-9522
> URL: https://issues.apache.org/jira/browse/HDFS-9522
> Project: Hadoop HDFS
> Issue Type: Improvement
> Reporter: John Zhuge
> Assignee: John Zhuge
> Priority: Minor
> Original Estimate: 24h
> Remaining Estimate: 24h
>
> The current DiffReportEntry is a C-style tagged union-like data structure.
> Recommend subclass hierarchy as in Java idiom.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)