[ https://issues.apache.org/jira/browse/KARAF-5962?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jean-Baptiste Onofré resolved KARAF-5962. ----------------------------------------- Resolution: Fixed > Regression when installing some features containing fragments 4.2.0 -> 4.2.1 > ---------------------------------------------------------------------------- > > Key: KARAF-5962 > URL: https://issues.apache.org/jira/browse/KARAF-5962 > Project: Karaf > Issue Type: Bug > Components: karaf > Affects Versions: 4.2.1 > Environment: java.specification.name Java Platform API Specification > java.specification.vendor Oracle Corporation > java.specification.version 1.8 > java.runtime.name OpenJDK Runtime Environment > java.runtime.version 1.8.0_181-8u181-b13-1~deb9u1-b13 > Reporter: rg chi > Assignee: Jean-Baptiste Onofré > Priority: Major > Fix For: 4.2.2 > > > Bug reproduction uses Apache Ignite karaf feature with JDK 8. In this case > org.apache.ignite.ignite-core plays host to fragment > org.apache.ignite.ignite-indexing. > 1) Expose > {noformat} > com.sun.management, \ > sun.misc, \ > sun.nio.ch > {noformat} > in system bundle > (for some reason ignite uses Import-Package to wire these so boot delegation > is not enough; we need to append packages to system bundle) > 2) > {noformat} > karaf@root()> feature:repo-add > mvn:org.apache.ignite/ignite-osgi-karaf/2.6.0/xml/features > karaf@root()> feature:install ignite-core > karaf@root()> feature:install ignite-indexing > {noformat} > Works fine in 4.2.0 but in 4.2.1 this generates exception: > {noformat} > java.lang.ArrayIndexOutOfBoundsException: -1 > at java.util.ArrayList.elementData(ArrayList.java:422) > at java.util.ArrayList.set(ArrayList.java:450) > at org.apache.felix.resolver.util.ShadowList.replace(ShadowList.java:74) > at org.apache.felix.resolver.Candidates.prepare(Candidates.java:941) > at > org.apache.felix.resolver.ResolverImpl.getInitialCandidates(ResolverImpl.java:505) > at > org.apache.felix.resolver.ResolverImpl.doResolve(ResolverImpl.java:390) > at org.apache.felix.resolver.ResolverImpl.resolve(ResolverImpl.java:378) > at org.apache.felix.resolver.ResolverImpl.resolve(ResolverImpl.java:332) > at > org.apache.karaf.features.internal.region.SubsystemResolver.resolve(SubsystemResolver.java:257) > at > org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:388) > at > org.apache.karaf.features.internal.service.FeaturesServiceImpl.doProvision(FeaturesServiceImpl.java:1025) > at > org.apache.karaf.features.internal.service.FeaturesServiceImpl.lambda$doProvisionInThread$13(FeaturesServiceImpl.java:964) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Error executing command: -1 > {noformat} > Now this does not seem to happen with all fragment-host combinations. But the > above example is a reliable way to reproduce the faulty behavior in Karaf > 4.2.1. > This might be related to changes introduced in KARAF-5706 but as of yet > undetermined. -- This message was sent by Atlassian JIRA (v7.6.3#76005)