Replace awaitBusy with assertBusy in atLeastDocsIndexed (#38190)

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.
This commit is contained in:
Nhat Nguyen 2019-02-01 13:31:17 -05:00 committed by GitHub
parent ee57420de6
commit f64b20383e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 4 additions and 3 deletions

View File

@ -487,14 +487,15 @@ 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().value >= numDocsReplicated;
assertNotNull(response.getHits().getTotalHits());
assertThat(response.getHits().getTotalHits().value, greaterThanOrEqualTo(numDocsReplicated));
}, 60, TimeUnit.SECONDS);
}