Toshihiro Suzuki created HBASE-25576: ----------------------------------------
Summary: Should not use HashMap (ConcurrentHashMap) or HashSet when using byte[] as a key of Map or an element of Set Key: HBASE-25576 URL: https://issues.apache.org/jira/browse/HBASE-25576 Project: HBase Issue Type: Bug Reporter: Toshihiro Suzuki I sometimes face the code using HashMap (ConcurrentHashMap) or HashSet when using byte[] as a key of Map or an element of Set in the HBase code, which could cause very confusing bugs. We should use TreeMap (ConcurrentSkipListMap) or TreeSet (ConcurrentSkipListSet) with Bytes.BYTES_COMPARATOR when using byte[] as a key of Map or an element of Set as follows: {code} Map<byte[], String> map1 = new TreeMap<>(Bytes.BYTES_COMPARATOR); Map<byte[], String> map2 = new ConcurrentSkipListMap<>(Bytes.BYTES_COMPARATOR); Set<byte[]> set1 = new TreeSet<>(Bytes.BYTES_COMPARATOR); Set<byte[]> set2 = new ConcurrentSkipListSet<>(Bytes.BYTES_COMPARATOR); {code} We should fix the existing ones in this Jira. -- This message was sent by Atlassian Jira (v8.3.4#803005)