diff --git a/graylog2-server/src/main/java/org/graylog2/database/PersistedServiceImpl.java b/graylog2-server/src/main/java/org/graylog2/database/PersistedServiceImpl.java
index <HASH>..<HASH> 100644
--- a/graylog2-server/src/main/java/org/graylog2/database/PersistedServiceImpl.java
+++ b/graylog2-server/src/main/java/org/graylog2/database/PersistedServiceImpl.java
@@ -287,6 +287,7 @@ public class PersistedServiceImpl implements PersistedService {
 
             // Work on embedded Maps, too.
             if (x.getValue() instanceof Map) {
+                x.setValue(Maps.newHashMap((Map<String, Object>) x.getValue()));
                 fieldTransformations((Map<String, Object>) x.getValue());
                 continue;
             }
Ensure we use a mutable map to persist data