in crossdc-consumer/src/main/java/org/apache/solr/crossdc/consumer/KafkaCrossDcConsumer.java [390:429]
protected void processResult(MirroredSolrRequest.Type type, IQueueHandler.Result<MirroredSolrRequest> result) throws MirroringException {
MirroredSolrRequest item = result.getItem();
switch (result.status()) {
case FAILED_RESUBMIT:
if (log.isTraceEnabled()) {
log.trace("result=failed-resubmit");
}
final int attempt = item.getAttempt();
if (attempt > this.maxAttempts) {
log.info("Sending message to dead letter queue because of max attempts limit with current value = {}", attempt);
kafkaMirroringSink.submitToDlq(item);
metrics.counter(MetricRegistry.name(type.name(), "failed-dlq")).inc();
} else {
kafkaMirroringSink.submit(item);
metrics.counter(MetricRegistry.name(type.name(), "failed-resubmit")).inc();
}
break;
case HANDLED:
// no-op
if (log.isTraceEnabled()) {
log.trace("result=handled");
}
metrics.counter(MetricRegistry.name(type.name(), "handled")).inc();
break;
case NOT_HANDLED_SHUTDOWN:
if (log.isTraceEnabled()) {
log.trace("result=nothandled_shutdown");
}
metrics.counter(MetricRegistry.name(type.name(), "nothandled_shutdown")).inc();
case FAILED_RETRY:
log.error("Unexpected response while processing request. We never expect {}.", result.status().toString());
metrics.counter(MetricRegistry.name(type.name(), "failed-retry")).inc();
break;
default:
if (log.isTraceEnabled()) {
log.trace("result=no matching case");
}
// no-op
}
}