[ https://issues.apache.org/jira/browse/SLING-3474?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13983041#comment-13983041 ]
Carsten Ziegeler commented on SLING-3474: ----------------------------------------- Actually the underlying problem is the same as described in SLING-3522. > Concurrent modification exception in installer > ---------------------------------------------- > > Key: SLING-3474 > URL: https://issues.apache.org/jira/browse/SLING-3474 > Project: Sling > Issue Type: Bug > Components: Installer > Affects Versions: Installer Core 3.5.0 > Reporter: Carsten Ziegeler > Assignee: Carsten Ziegeler > Fix For: Installer Core 3.5.2 > > > The following exception might occur: > 12.03.2014 23:21:49.899 *WARN* [CM Event Dispatcher (Fire ConfigurationEvent: > pid=org.apache.sling.engine.impl.auth.SlingAuthenticator)] > org.apache.sling.installer.core.impl.PersistentResourceList Unable to save > persistent list: null > java.util.ConcurrentModificationException: null > at java.util.HashMap$HashIterator.nextEntry(HashMap.java:926) > at java.util.HashMap$EntryIterator.next(HashMap.java:966) > at java.util.HashMap$EntryIterator.next(HashMap.java:964) > at java.util.HashMap.writeObject(HashMap.java:1131) > at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:606) > at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:988) > at > java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1495) > at > java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431) > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177) > at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:347) > at > org.apache.sling.installer.core.impl.PersistentResourceList.save(PersistentResourceList.java:166) > at > org.apache.sling.installer.core.impl.OsgiInstallerImpl.resourceAddedOrUpdated(OsgiInstallerImpl.java:965) > at > org.apache.sling.installer.factories.configuration.impl.ConfigTaskCreator.configurationEvent(ConfigTaskCreator.java:138) > at > org.apache.felix.cm.impl.ConfigurationManager$FireConfigurationEvent.sendEvent(ConfigurationManager.java:2032) > at > org.apache.felix.cm.impl.ConfigurationManager$FireConfigurationEvent.run(ConfigurationManager.java:2002) > at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:103) > at java.lang.Thread.run(Thread.java:744) > While the installer works under the assumption that only the main thread can > modify the installer state, the writeback mechanism can actually also change > and persists state (as seen above). Therefore the code needs to be guarded > against concurrent access. -- This message was sent by Atlassian JIRA (v6.2#6252)