A customer is installing a package that restarts various other bundles, one of these being the iPOJO framework so that it can pick up all of the iPOJO's that have been created. The problem comes when deploying multiple CQ5 pages. There appears to be some Threading issue with the OSGI framework causing the below exception in the logs, the end result the OSGI framework is left with some bundles not being started correctly. The exception we see in the logs is: - 31.07.2012 14:54:10.281 *ERROR* [FelixDispatchQueue] org.apache.felix.ipojo FrameworkEvent ERROR (java.util.ConcurrentModificationException) java.util.ConcurrentModificationException at java.util.HashMap$HashIterator.nextEntry(HashMap.java:793) at java.util.HashMap$KeyIterator.next(HashMap.java:828) at org.apache.felix.ipojo.InstanceCreator.removeInstancesFromBundle(InstanceCreator.java:117) at org.apache.felix.ipojo.Extender.closeManagementFor(Extender.java:147) at org.apache.felix.ipojo.Extender.bundleChanged(Extender.java:129) ... Customer has an automated build and deploy landscape using ANT/IVY as the build/dependency management tool. As per the logs[1], it can be seen that one thread is trying to register the iPOJO component while another is unregistering it. Is there a way for having a thread safe mechanism for installing a package and waiting for the OSGI bundles to be restarted?
[1] 31.07.2012 13:12:31.312 *INFO* [OsgiInstallerImpl] org.apache.felix.ipojo Service [3067] ServiceEvent UNREGISTERING 31.07.2012 13:12:31.315 *INFO* [Thread-1901] org.apache.felix.ipojo Service [3184] ServiceEvent REGISTERED 31.07.2012 13:12:31.335 *INFO* [OsgiInstallerImpl] com.sap.components.contactcta Service [com.sap.cta.configuration,3066] ServiceEvent UNREGISTERING 31.07.2012 13:12:31.335 *ERROR* [FelixDispatchQueue] org.apache.felix.ipojo FrameworkEvent ERROR (java.util.ConcurrentModificationException) java.util.ConcurrentModificationException Varun mitra| Technical Support Engineer| adobe systems inc.

