Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
1.7.2
-
None
-
None
-
Linux
Description
This is discussed @tomee-dev
http://tomee-openejb.979440.n4.nabble.com/TomEE-SystemInstance-unsafely-iterates-over-the-System-getProperties-td4675732.html
We've been seeing the following exception [2] in an instance where we have extended TomEE 1.7.2. We have debugged the issue, and it seems to have occurred since TomEE iterate over the System.getProperties() hashtable [1]. It's possible that other threads might be using the system properties which could lead to ConcurrentModificationException.
Best way fix thing would to create a clone of the system properties, and use that clone to iterate. There are issues reported for unsafe iterating of system properties in other projects as seen in [3].
Can we get this fixed in TomEE 1.7.3?
[2]
org.apache.openejb.loader.LoaderRuntimeException: Failed to create default instance of SystemInstance
at org.apache.openejb.loader.SystemInstance.reset(SystemInstance.java:280)
at org.apache.openejb.loader.SystemInstance.<clinit>(SystemInstance.java:265)
... 9 more
Caused by: java.util.ConcurrentModificationException
at java.util.Hashtable$Enumerator.next(Hashtable.java:1167)
at org.apache.openejb.loader.SystemInstance.<init>(SystemInstance.java:71)
at org.apache.openejb.loader.SystemInstance.reset(SystemInstance.java:277)
... 10 more
[3]
https://bugs.eclipse.org/bugs/show_bug.cgi?id=469706
https://liquibase.jira.com/browse/CORE-2104