[
https://issues.apache.org/jira/browse/HBASE-14279?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15072574#comment-15072574
]
Heng Chen commented on HBASE-14279:
-----------------------------------
{quote}
The last patch contains a hash function coming from old JDK, and is it OK
around a license issue?
{quote}
org.apache.hadoop.hbase.regionserver.LruHashMap#hashcode already use it, So
IMO it is ok for license.
{quote}
Is there some reason JDK changes the logic of the hash function and can we
ignore it safely? I also slightly worry about there still exists an other VM
implementation that uses the old hash function, making our internal maps
completely waste.
{quote}
I don't think there is any problem here. As i mentioned above, if orthogonal
problem exists, the only cost is some conflicts when search key in internal
map. And i do NOT think it is a big problem compared with disk IO. And if we
check the usage of ConcurrentIndex, there is no GET operation. So i think we
have no need to do improvement for internal map operation, it is useless for
the whole performance of BucketCache, wdyt? [~ikeda]
> Race condition in ConcurrentIndex
> ---------------------------------
>
> Key: HBASE-14279
> URL: https://issues.apache.org/jira/browse/HBASE-14279
> Project: HBase
> Issue Type: Bug
> Reporter: Hiroshi Ikeda
> Assignee: Heng Chen
> Priority: Minor
> Attachments: HBASE-14279.patch, HBASE-14279_v2.patch,
> HBASE-14279_v3.patch, HBASE-14279_v4.patch, HBASE-14279_v5.patch,
> HBASE-14279_v5.patch, HBASE-14279_v6.patch, HBASE-14279_v7.1.patch,
> HBASE-14279_v7.patch, LockStripedBag.java
>
>
> {{ConcurrentIndex.put}} and {{remove}} are in race condition. It is possible
> to remove a non-empty set, and to add a value to a removed set. Also
> {{ConcurrentIndex.values}} is vague in sense that the returned set sometimes
> trace the current state and sometimes doesn't.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)