diff --git a/test/framework/src/main/java/org/elasticsearch/test/ESIntegTestCase.java b/test/framework/src/main/java/org/elasticsearch/test/ESIntegTestCase.java index 2754b1ff414b1..035ce22094f8c 100644 --- a/test/framework/src/main/java/org/elasticsearch/test/ESIntegTestCase.java +++ b/test/framework/src/main/java/org/elasticsearch/test/ESIntegTestCase.java @@ -528,7 +528,7 @@ private TestCluster buildAndPutCluster(Scope currentClusterScope, long seed) thr return testCluster; } - private static void clearClusters() throws IOException { + private static void clearClusters() throws Exception { if (!clusters.isEmpty()) { IOUtils.close(clusters.values()); clusters.clear(); @@ -537,9 +537,9 @@ private static void clearClusters() throws IOException { restClient.close(); restClient = null; } - assertEquals(HttpChannelTaskHandler.INSTANCE.getNumChannels() + " channels still being tracked in " + - HttpChannelTaskHandler.class.getSimpleName() + " while there should be none", 0, - HttpChannelTaskHandler.INSTANCE.getNumChannels()); + assertBusy(() -> assertEquals(HttpChannelTaskHandler.INSTANCE.getNumChannels() + " channels still being tracked in " + + HttpChannelTaskHandler.class.getSimpleName() + " while there should be none", 0, + HttpChannelTaskHandler.INSTANCE.getNumChannels())); } private void afterInternal(boolean afterClass) throws Exception {