SAMZA-2461 Fix: Concurrent Modification Exception in InMemorySystem (#1280)
diff --git a/samza-core/src/main/java/org/apache/samza/system/inmemory/InMemoryManager.java b/samza-core/src/main/java/org/apache/samza/system/inmemory/InMemoryManager.java
index f53e0b3..f3028f9 100644
--- a/samza-core/src/main/java/org/apache/samza/system/inmemory/InMemoryManager.java
+++ b/samza-core/src/main/java/org/apache/samza/system/inmemory/InMemoryManager.java
@@ -20,6 +20,7 @@
package org.apache.samza.system.inmemory;
import com.google.common.base.Preconditions;
+import com.google.common.collect.ImmutableList;
import java.time.Instant;
import java.util.ArrayList;
import java.util.Collections;
@@ -199,6 +200,6 @@
return new ArrayList<>();
}
- return messageEnvelopesForSSP.subList(startingOffset, messageEnvelopesForSSP.size());
+ return ImmutableList.copyOf(messageEnvelopesForSSP.subList(startingOffset, messageEnvelopesForSSP.size()));
}
}