diff --git a/server/src/main/java/org/elasticsearch/ingest/TrackingResultProcessor.java b/server/src/main/java/org/elasticsearch/ingest/TrackingResultProcessor.java index df1873c25af48..b819230a74b3b 100644 --- a/server/src/main/java/org/elasticsearch/ingest/TrackingResultProcessor.java +++ b/server/src/main/java/org/elasticsearch/ingest/TrackingResultProcessor.java @@ -36,7 +36,6 @@ public final class TrackingResultProcessor implements Processor { private final ConditionalProcessor conditionalProcessor; private final List processorResultList; private final boolean ignoreFailure; - private Tuple conditionalWithResult = null; //null = no conditional TrackingResultProcessor(boolean ignoreFailure, Processor actualProcessor, ConditionalProcessor conditionalProcessor, List processorResultList) { @@ -48,16 +47,19 @@ public final class TrackingResultProcessor implements Processor { @Override public void execute(IngestDocument ingestDocument, BiConsumer handler) { - if (conditionalProcessor != null ) { + Tuple conditionalWithResult; + if (conditionalProcessor != null) { if (conditionalProcessor.evaluate(ingestDocument) == false) { conditionalWithResult = new Tuple<>(conditionalProcessor.getCondition(), Boolean.FALSE); processorResultList.add(new SimulateProcessorResult(actualProcessor.getType(), actualProcessor.getTag(), actualProcessor.getDescription(), conditionalWithResult)); handler.accept(ingestDocument, null); return; - } else{ + } else { conditionalWithResult = new Tuple<>(conditionalProcessor.getCondition(), Boolean.TRUE); } + } else { + conditionalWithResult = null; //no condition } if (actualProcessor instanceof PipelineProcessor) {