You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@aries.apache.org by "Tom De Wolf (JIRA)" <ji...@apache.org> on 2016/08/08 14:09:20 UTC

[jira] [Updated] (ARIES-1591) Subsystem install fails due to ArrayIndexOutofBoundsException

     [ https://issues.apache.org/jira/browse/ARIES-1591?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tom De Wolf updated ARIES-1591:
-------------------------------
    Description: 
When we use the 2.0.9-SNAPSHOT version currently in development we get an ArrayIndexOutOfBoundsException as soon as our base subsystem contains a fragment bundle:

{panel}
Caused by: org.osgi.service.subsystem.SubsystemException: java.lang.ArrayIndexOutOfBoundsException: -1
	at org.apache.aries.subsystem.core.internal.Utils.handleTrowable(Utils.java:117)
	at org.apache.aries.subsystem.core.internal.SubsystemResource.computeDependencies(SubsystemResource.java:398)
	at org.apache.aries.subsystem.core.internal.SubsystemResource.computeDependencies(SubsystemResource.java:363)
	at org.apache.aries.subsystem.core.internal.SubsystemResource.<init>(SubsystemResource.java:101)
	at org.apache.aries.subsystem.core.internal.SubsystemResource.<init>(SubsystemResource.java:91)
	at org.apache.aries.subsystem.core.internal.InstallAction.run(InstallAction.java:60)
	at org.apache.aries.subsystem.core.internal.InstallAction.run(InstallAction.java:27)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.apache.aries.subsystem.core.internal.BasicSubsystem.install(BasicSubsystem.java:738)
	at org.apache.aries.subsystem.core.internal.BasicSubsystem.install(BasicSubsystem.java:791)
	at org.apache.aries.subsystem.core.internal.BasicSubsystem.install(BasicSubsystem.java:365)
	at org.apache.aries.subsystem.core.internal.BasicSubsystem.install(BasicSubsystem.java:70)
	... 30 more
Caused by: java.lang.ArrayIndexOutOfBoundsException: -1
	at org.apache.felix.resolver.util.CopyOnWriteList.set(CopyOnWriteList.java:53)
	at org.apache.felix.resolver.Candidates.prepare(Candidates.java:1052)
	at org.apache.felix.resolver.ResolverImpl.resolve(ResolverImpl.java:173)
	at org.apache.aries.subsystem.core.internal.SubsystemResource.computeDependencies(SubsystemResource.java:393)
	... 41 more
{panel}

Attached are 2 subsystems that allow to reproduce it. Note that the ONLY difference between these subsystem esa's and the onces attached at ARIES-1590 is the fragment bundle osgi-pax-web-jetty-config.

So the problem might be related to the same commit, but another effect.

Note: we are using the felix resolver 1.4.0

Steps to reproduce:
1. start clean felix
2. install the attached reproduce-base-subsystem-4.1.2-SNAPSHOT.esa, do not start it
3. install the attached reproduce-subsystem-4.1.2-SNAPSHOT.esa


  was:
When we use the 2.0.9-SNAPSHOT version currently in development we get an ArrayIndexOutOfBoundsException as soon as our base subsystem contains a fragment bundle:

{panel}
Caused by: org.osgi.service.subsystem.SubsystemException: java.lang.ArrayIndexOutOfBoundsException: -1
	at org.apache.aries.subsystem.core.internal.Utils.handleTrowable(Utils.java:117)
	at org.apache.aries.subsystem.core.internal.SubsystemResource.computeDependencies(SubsystemResource.java:398)
	at org.apache.aries.subsystem.core.internal.SubsystemResource.computeDependencies(SubsystemResource.java:363)
	at org.apache.aries.subsystem.core.internal.SubsystemResource.<init>(SubsystemResource.java:101)
	at org.apache.aries.subsystem.core.internal.SubsystemResource.<init>(SubsystemResource.java:91)
	at org.apache.aries.subsystem.core.internal.InstallAction.run(InstallAction.java:60)
	at org.apache.aries.subsystem.core.internal.InstallAction.run(InstallAction.java:27)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.apache.aries.subsystem.core.internal.BasicSubsystem.install(BasicSubsystem.java:738)
	at org.apache.aries.subsystem.core.internal.BasicSubsystem.install(BasicSubsystem.java:791)
	at org.apache.aries.subsystem.core.internal.BasicSubsystem.install(BasicSubsystem.java:365)
	at org.apache.aries.subsystem.core.internal.BasicSubsystem.install(BasicSubsystem.java:70)
	... 30 more
Caused by: java.lang.ArrayIndexOutOfBoundsException: -1
	at org.apache.felix.resolver.util.CopyOnWriteList.set(CopyOnWriteList.java:53)
	at org.apache.felix.resolver.Candidates.prepare(Candidates.java:1052)
	at org.apache.felix.resolver.ResolverImpl.resolve(ResolverImpl.java:173)
	at org.apache.aries.subsystem.core.internal.SubsystemResource.computeDependencies(SubsystemResource.java:393)
	... 41 more
{panel}

Attached are 2 subsystems that allow to reproduce it. Note that the ONLY difference between these subsystem esa's and the onces attached at ARIES-1590 is the fragment bundle osgi-pax-web-jetty-config.

So the problem might be related to the same commit, but another effect.


> Subsystem install fails due to ArrayIndexOutofBoundsException
> -------------------------------------------------------------
>
>                 Key: ARIES-1591
>                 URL: https://issues.apache.org/jira/browse/ARIES-1591
>             Project: Aries
>          Issue Type: Bug
>          Components: Subsystem
>            Reporter: Tom De Wolf
>            Priority: Blocker
>             Fix For: subsystem-2.1.0
>
>         Attachments: reproduce-base-subsystem-4.1.2-SNAPSHOT.esa, reproduce-subsystem-4.1.2-SNAPSHOT.esa
>
>
> When we use the 2.0.9-SNAPSHOT version currently in development we get an ArrayIndexOutOfBoundsException as soon as our base subsystem contains a fragment bundle:
> {panel}
> Caused by: org.osgi.service.subsystem.SubsystemException: java.lang.ArrayIndexOutOfBoundsException: -1
> 	at org.apache.aries.subsystem.core.internal.Utils.handleTrowable(Utils.java:117)
> 	at org.apache.aries.subsystem.core.internal.SubsystemResource.computeDependencies(SubsystemResource.java:398)
> 	at org.apache.aries.subsystem.core.internal.SubsystemResource.computeDependencies(SubsystemResource.java:363)
> 	at org.apache.aries.subsystem.core.internal.SubsystemResource.<init>(SubsystemResource.java:101)
> 	at org.apache.aries.subsystem.core.internal.SubsystemResource.<init>(SubsystemResource.java:91)
> 	at org.apache.aries.subsystem.core.internal.InstallAction.run(InstallAction.java:60)
> 	at org.apache.aries.subsystem.core.internal.InstallAction.run(InstallAction.java:27)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at org.apache.aries.subsystem.core.internal.BasicSubsystem.install(BasicSubsystem.java:738)
> 	at org.apache.aries.subsystem.core.internal.BasicSubsystem.install(BasicSubsystem.java:791)
> 	at org.apache.aries.subsystem.core.internal.BasicSubsystem.install(BasicSubsystem.java:365)
> 	at org.apache.aries.subsystem.core.internal.BasicSubsystem.install(BasicSubsystem.java:70)
> 	... 30 more
> Caused by: java.lang.ArrayIndexOutOfBoundsException: -1
> 	at org.apache.felix.resolver.util.CopyOnWriteList.set(CopyOnWriteList.java:53)
> 	at org.apache.felix.resolver.Candidates.prepare(Candidates.java:1052)
> 	at org.apache.felix.resolver.ResolverImpl.resolve(ResolverImpl.java:173)
> 	at org.apache.aries.subsystem.core.internal.SubsystemResource.computeDependencies(SubsystemResource.java:393)
> 	... 41 more
> {panel}
> Attached are 2 subsystems that allow to reproduce it. Note that the ONLY difference between these subsystem esa's and the onces attached at ARIES-1590 is the fragment bundle osgi-pax-web-jetty-config.
> So the problem might be related to the same commit, but another effect.
> Note: we are using the felix resolver 1.4.0
> Steps to reproduce:
> 1. start clean felix
> 2. install the attached reproduce-base-subsystem-4.1.2-SNAPSHOT.esa, do not start it
> 3. install the attached reproduce-subsystem-4.1.2-SNAPSHOT.esa



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)