Details
-
Task
-
Status: Closed
-
Major
-
Resolution: Invalid
-
resolver-2.0.0
-
None
-
None
Description
I'm using a custom ResolveContext implementation that I've written in order to calculate the dependencies of some applications which bundles are all centralized in an OBR. Now, using the Felix framework 6.0.1 (and the Resolver 2.0.0 that is provided by the framework), I sometimes get an NPE in the ResolverImpl.checkPackageSpaceConsistency, line 1319).
My OBR is not yet fully "curated" (I still have some " Candidate permutation failed due to a conflict between imports" logs when enabling felix.log.level=4). So I'm cleaning the OBR gradually, but now, sometimes I see this NPE while resolving :
java.lang.NullPointerException at org.apache.felix.resolver.ResolverImpl.checkPackageSpaceConsistency(ResolverImpl.java:1319) at org.apache.felix.resolver.ResolverImpl.checkPackageSpaceConsistency(ResolverImpl.java:1500) at org.apache.felix.resolver.ResolverImpl.checkPackageSpaceConsistency(ResolverImpl.java:1500) at org.apache.felix.resolver.ResolverImpl.checkPackageSpaceConsistency(ResolverImpl.java:1500) at org.apache.felix.resolver.ResolverImpl.checkPackageSpaceConsistency(ResolverImpl.java:1500) at org.apache.felix.resolver.ResolverImpl.checkPackageSpaceConsistency(ResolverImpl.java:1500) at org.apache.felix.resolver.ResolverImpl.checkPackageSpaceConsistency(ResolverImpl.java:1500) at org.apache.felix.resolver.ResolverImpl.checkPackageSpaceConsistency(ResolverImpl.java:1500) at org.apache.felix.resolver.ResolverImpl.checkConsistency(ResolverImpl.java:622) at org.apache.felix.resolver.ResolverImpl.findValidCandidates(ResolverImpl.java:575) at org.apache.felix.resolver.ResolverImpl.doResolve(ResolverImpl.java:438) at org.apache.felix.resolver.ResolverImpl.resolve(ResolverImpl.java:421) at org.apache.felix.resolver.ResolverImpl.resolve(ResolverImpl.java:414) at com.nokia.as.microfeatures.bundlerepository.impl.BundleRepositoryImpl.findResolution(BundleRepositoryImpl.java:257)
The bad thing is that I'm not able to reproduce the NPE when I enable felix.log.level=4, and the NPE is difficult to reproduce.
Could someone please give me a clue about what could produce this NPE ? Are there some traces which could be added in order to figure out what is the problem ? Then is there a fix which should be done in order to avoid this null pointer ?
If I fully cleanup my OBR, maybe I won't have anymore the NPE, but I just wanted to report it here.
thank you.