Yi Liu created HDFS-8912: ---------------------------- Summary: Implement ShrinkableHashMap extends java HashMap and use properly Key: HDFS-8912 URL: https://issues.apache.org/jira/browse/HDFS-8912 Project: Hadoop HDFS Issue Type: Sub-task Reporter: Yi Liu Assignee: Yi Liu
Currently {{LightWeightHashSet}} and {{LightWeightLinkedSet}} are used in hdfs, there are two advantages compared to java HashSet: one is the entry requires fewer memory, another is it's shrinkable. In real cluster, hdfs is a long running service, and {{set}} may become very large at some time and may become small after that, so shrinking the {{set}} when size hits the shrink threshold is necessary, it can improve the NN memory. Same situation for {{map}}, some HashMap used in BlockManager (e.g., the hashmap in CorruptReplicasMap), it's better to be shrinkable. I think it's worth to implement ShrinkableHashMap extends the java HashMap, for quick glance, seems few code is needed. -- This message was sent by Atlassian JIRA (v6.3.4#6332)