Jinghui Wang created HADOOP-11221: ------------------------------------- Summary: 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
The following code snippet shows that IdentityHashStore assumes the hashCode is always non-negative. {code:title=Bar.java|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)