Hello, I get an intermittent (very rare) exception while running tests using declarative services under Felix.
The exception stack trace shows: java.lang.IllegalArgumentException: Service object cannot be null. at org.apache.felix.framework.Felix.registerService(Felix.java:2661) at org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:254) at org.apache.felix.scr.impl.AbstractComponentManager.registerComponentService(AbstractComponentManager.java:598) at org.apache.felix.scr.impl.AbstractComponentManager.activateInternal(AbstractComponentManager.java:426) at org.apache.felix.scr.impl.AbstractComponentManager.enableInternal(AbstractComponentManager.java:323) at org.apache.felix.scr.impl.AbstractComponentManager.access$000(AbstractComponentManager.java:36) at org.apache.felix.scr.impl.AbstractComponentManager$1.run(AbstractComponentManager.java:94) at org.apache.felix.scr.impl.ComponentActorThread.run(ComponentActorThread.java:85) Whenever I have seen the exception, logs suggest that the components were being reactivated at around the same time. The stack trace from the debugger when reactivate occurs shows: ImmediateComponentManager.disposeImplementationObject(Object, ComponentContext) line: 273 ImmediateComponentManager.deleteComponent() line: 151 ImmediateComponentManager(AbstractComponentManager).deactivateInternal() line: 469 ImmediateComponentManager(AbstractComponentManager).reactivate() line: 142 ImmediateComponentManager.reconfigure(Dictionary) line: 399 ImmediateComponentManager$1.updated(Dictionary) line: 90 ConfigurationManager$ManagedServiceUpdate.run() line: 863 UpdateThread.run() line: 89 Would it be possible to introduce some synchronization during activate/deactivate to avoid the service/component being set to null? I am using Felix framework 1.1.0-SNAPSHOT and SCR 1.0.0. Thank you... Regards, Rajini