diff --git a/data-prepper-api/src/main/java/org/opensearch/dataprepper/model/event/DefaultEventHandle.java b/data-prepper-api/src/main/java/org/opensearch/dataprepper/model/event/DefaultEventHandle.java index cb7c12da84..743309bf75 100644 --- a/data-prepper-api/src/main/java/org/opensearch/dataprepper/model/event/DefaultEventHandle.java +++ b/data-prepper-api/src/main/java/org/opensearch/dataprepper/model/event/DefaultEventHandle.java @@ -56,8 +56,10 @@ public Instant getExternalOriginationTime() { @Override public void release(boolean result) { - for (final BiConsumer consumer: releaseConsumers) { - consumer.accept(this, result); + synchronized (releaseConsumers) { + for (final BiConsumer consumer: releaseConsumers) { + consumer.accept(this, result); + } } AcknowledgementSet acknowledgementSet = getAcknowledgementSet(); if (acknowledgementSet != null) { @@ -67,6 +69,8 @@ public void release(boolean result) { @Override public void onRelease(BiConsumer releaseConsumer) { - releaseConsumers.add(releaseConsumer); + synchronized (releaseConsumers) { + releaseConsumers.add(releaseConsumer); + } } }