diff --git a/simulator/src/main/java/com/github/benmanes/caffeine/cache/simulator/policy/greedy_dual/GDWheelPolicy.java b/simulator/src/main/java/com/github/benmanes/caffeine/cache/simulator/policy/greedy_dual/GDWheelPolicy.java index 5bead13885..9651d8b3b0 100644 --- a/simulator/src/main/java/com/github/benmanes/caffeine/cache/simulator/policy/greedy_dual/GDWheelPolicy.java +++ b/simulator/src/main/java/com/github/benmanes/caffeine/cache/simulator/policy/greedy_dual/GDWheelPolicy.java @@ -122,7 +122,7 @@ private void migrate(int level) { clockHand[level] = hand; // if C[idx] has advanced a whole round back to 1, call migration(idx+1) - if ((hand == 0) && (level < wheel.length)) { + if ((hand == 0) && (level + 1 < wheel.length)) { migrate(level + 1); }