@Override
  protected Object clone() throws CloneNotSupportedException {
    CopyOnWriteHashMap<K, V> clone = new CopyOnWriteHashMap<>();
    clone.map = map;
    return clone;
  }
A copy on write hash map.

Note that the entryKey and keySet of this map are unmodifable. Should be easy to make them
modifiable at a future time.
geode-core/src/main/java/org/apache/geode/internal/util/concurrent/CopyOnWriteHashMap.java