Replace awaitBusy with assertBusy in atLeastDocsIndexed
Unlike assertBusy, awaitBusy does not retry if the code-block throws an
AssertionError. A refresh in atLeastDocsIndexed can fail because we call
this method while we are closing some node in FollowerFailOverIT.
@@ -490,14 +490,14 @@ public abstract class CcrIntegTestCase extends ESTestCase {
return docs;
}
- protected void atLeastDocsIndexed(Client client, String index, long numDocsReplicated) throws InterruptedException {
+ protected void atLeastDocsIndexed(Client client, String index, long numDocsReplicated) throws Exception {
logger.info("waiting for at least [{}] documents to be indexed into index [{}]", numDocsReplicated, index);
- awaitBusy(() -> {
+ assertBusy(() -> {
refresh(client, index);
SearchRequest request = new SearchRequest(index);
request.source(new SearchSourceBuilder().size(0));
SearchResponse response = client.search(request).actionGet();
- return response.getHits().getTotalHits() >= numDocsReplicated;
+ assertThat(response.getHits().getTotalHits(), greaterThanOrEqualTo(numDocsReplicated));
}, 60, TimeUnit.SECONDS);
}
