--- jsr166/src/jdk8/java/util/concurrent/ConcurrentHashMap.java 2017/03/08 22:13:42 1.4 +++ jsr166/src/jdk8/java/util/concurrent/ConcurrentHashMap.java 2018/10/09 01:42:02 1.5 @@ -2520,6 +2520,8 @@ public class ConcurrentHashMap exte setTabAt(tab, i, fwd); advance = true; } + else if (f instanceof ReservationNode) + throw new IllegalStateException("Recursive update"); } } }