@Override public void processFailure(QueryBatch batch, Throwable throwable) { boolean isHostUnavailableException = processException(batch.getBatcher(), throwable, batch.getClient().getHost()); if ( isHostUnavailableException == true ) { try { logger.warn("Retrying failed listener batch: {}, results so far: {}, uris: {}", batch.getJobBatchNumber(), batch.getJobResultsSoFar(), Arrays.toString(batch.getItems())); batch.getBatcher().retryListener(batch, queryBatchListener); } catch (RuntimeException e) { logger.error("Exception during listener retry", e); processFailure(batch, e); } } } }