[ https://issues.apache.org/jira/browse/HADOOP-11221?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14181962#comment-14181962 ]
Chris Douglas commented on HADOOP-11221: ---------------------------------------- {{Math.abs(Integer.MIN_VALUE)}} is still negative. > JAVA specification for hashcode does not enforce it to be non-negative, but > IdentityHashStore assumes System.identityHashCode() is non-negative > ----------------------------------------------------------------------------------------------------------------------------------------------- > > Key: HADOOP-11221 > URL: https://issues.apache.org/jira/browse/HADOOP-11221 > Project: Hadoop Common > Issue Type: Bug > Components: util > Affects Versions: 2.4.1 > Reporter: Jinghui Wang > Assignee: Jinghui Wang > Attachments: HADOOP-11221.patch > > > The following code snippet shows that IdentityHashStore assumes the hashCode > is always non-negative. > {code:borderStyle=solid} > private void putInternal(Object k, Object v) { > int hash = System.identityHashCode(k); > final int numEntries = buffer.length / 2; > int index = hash % numEntries; > ... > } > > private int getElementIndex(K k) { > ... > final int numEntries = buffer.length / 2; > int hash = System.identityHashCode(k); > int index = hash % numEntries; > int firstIndex = index; > ... > } > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)