[
https://issues.apache.org/jira/browse/HDFS-8988?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14951474#comment-14951474
]
Uma Maheswara Rao G commented on HDFS-8988:
-------------------------------------------
Thanks Yi. Yes, I think we don't need ordered in excessReplicates, SO it make
sense to have LightWeightHashSet.
+1 pending jenkins.
> Use LightWeightHashSet instead of LightWeightLinkedSet in
> BlockManager#excessReplicateMap
> -----------------------------------------------------------------------------------------
>
> Key: HDFS-8988
> URL: https://issues.apache.org/jira/browse/HDFS-8988
> Project: Hadoop HDFS
> Issue Type: Improvement
> Reporter: Yi Liu
> Assignee: Yi Liu
> Attachments: HDFS-8988.001.patch, HDFS-8988.002.patch
>
>
> {code}
> public final Map<String, LightWeightLinkedSet<Block>> excessReplicateMap =
> new HashMap<>();
> {code}
> {{LightWeightLinkedSet}} extends {{LightWeightHashSet}} and in addition it
> stores elements in double linked list to ensure ordered traversal. So it
> requires more memory for each entry (2 references = 8 + 8 bytes = 16 bytes,
> assume 64-bits system/JVM).
> I have traversed the source code, and we don't need ordered traversal for
> excess replicated blocks, so could use {{LightWeightHashSet}} to save memory.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)