Please take a review at http://cr.openjdk.java.net/~weijun/8197518/webrev.00/
Two notes: 1. I tried list.subList(here, end).clear() but it's not faster. 2. I have looked at ConcurrentHashMap + ConcurrentSkipListMap but will need more time to verify its correctness and measure the performance gain. Since the bug is reported on 8u, a safer fix looks better. Noreg-perf. Thanks Max