QPID-8289: [Broker-J] Broker startup can fail due to ConcurrentModificationException
This closes #33
diff --git a/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java b/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
index f7b77f1..267356c 100644
--- a/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
+++ b/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
@@ -3505,7 +3505,8 @@
if(!excludeSystem)
{
inheritedContext.putAll(System.getenv());
- inheritedContext.putAll((Map) System.getProperties());
+ //clone is synchronized and will avoid ConcurrentModificationException
+ inheritedContext.putAll((Map) System.getProperties().clone());
}
generateInheritedContext(getModel(), this, inheritedContext);
return Collections.unmodifiableSet(inheritedContext.keySet());