diff --git a/server/src/test/java/org/elasticsearch/indices/breaker/HierarchyCircuitBreakerServiceTests.java b/server/src/test/java/org/elasticsearch/indices/breaker/HierarchyCircuitBreakerServiceTests.java index 15f6d0ed377fa..8d2255df9e7e8 100644 --- a/server/src/test/java/org/elasticsearch/indices/breaker/HierarchyCircuitBreakerServiceTests.java +++ b/server/src/test/java/org/elasticsearch/indices/breaker/HierarchyCircuitBreakerServiceTests.java @@ -628,14 +628,17 @@ void overLimitTriggered(boolean leader) { })).toList(); threads.forEach(Thread::start); - safeAwait(barrier); int iterationCount = randomIntBetween(1, 5); + int lastIterationTriggerCount = leaderTriggerCount.get(); + + safeAwait(barrier); for (int i = 0; i < iterationCount; ++i) { memoryUsage.set(randomLongBetween(0, 100)); safeAwait(countDown.get()); assertThat(leaderTriggerCount.get(), lessThanOrEqualTo(i + 1)); - assertThat(leaderTriggerCount.get(), greaterThanOrEqualTo(i / 2 + 1)); + assertThat(leaderTriggerCount.get(), greaterThanOrEqualTo(lastIterationTriggerCount)); + lastIterationTriggerCount = leaderTriggerCount.get(); time.addAndGet(randomLongBetween(interval, interval * 2)); countDown.set(new CountDownLatch(randomIntBetween(1, 20))); }