[ https://issues.apache.org/jira/browse/HADOOP-7208?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13035249#comment-13035249 ]
Steve Loughran commented on HADOOP-7208: ---------------------------------------- checking by classname is wrong because if you have >1 classloader you can have multiple classes with the name -even singleton classes. Better to use this.getClass().equals(that.getClass()) For a real review you really need to attach the patch > equals() and hashCode() implementation need to change in StandardSocketFactory > ------------------------------------------------------------------------------ > > Key: HADOOP-7208 > URL: https://issues.apache.org/jira/browse/HADOOP-7208 > Project: Hadoop Common > Issue Type: Bug > Reporter: Uma Maheswara Rao G > Assignee: Uma Maheswara Rao G > > In Hadoop IPC Client, we are using ClientCache which will maintain the > HashMap to keep the Client references. > private Map<SocketFactory, Client> clients = > new HashMap<SocketFactory, Client>(); > Now let us say, we want use two standard factories with Hadoop. > MyStandardSocketFactory (which extends StandardSocketFactory), and > StandardSocketFactory. In this case, because of equals and hashcode > implementation, MyStandardSocketFactory client can be overridden by > StandardSocketFactoryClient -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira