Hi Łukasz,

thanks for that in-depth explanation.
I will have a look at my feature dependencies and come back to you.

Strangely enough, this issue seems to have solved itself since some days.
At least I can not reproduce it anymore :/

Kind regards,
Thomas

Am Mi., 29. Sept. 2021 um 22:50 Uhr schrieb Łukasz Dywicki <
l...@code-house.org>:

> Hey Thomas,
> I just got stack overflow myself and began to look for solution of my
> issue.
>
>  From my past experiences I can tell you that stack overflow prior 4.3.x
> was usually result of multiple feature repositories (uris) delivering
> same feature. This might happen if you have several KARs/generated
> feature sets pulled into another feature/final assembly. All works
> separatelly but breaks when paths are crossed and packed together.
>
> You can search for it manually or simply with bash helper:
> find . -name "*.xml" -exec grep -C 4 -i "name=\"co7io-chrono" "{}" \;
> -print
>
> In my case I know issue is related to co7io-chrono feature because I
> attached debugger to see what is at the very top of stack overflow
> listed in .. stack trace. Turns out to be this feature.
>
> With above command I see that same feature is listed in few places.
>
> ./features/org.co7io.addons.feature.openhab/target/feature/feature.xml
> ./features/org.co7io.addons.feature.profile/target/feature/feature.xml
> ./bundles/org.co7io.chrono/target/test-classes/feature.xml (source)
>
> Situation for me is rather obvious the "chrono" stuff brings own feature
> descriptor which reffered in "openhab" and "profile" feature sets. Quite
> natural, isn't it? Yet due to use of feature aggregation the chrono
> feature is embedded into openhab and profile feature descriptors.
> Effectively I got 3 "co7io-chrono" features defined in three descriptors.
>
> After looking at dependency tree I found that all three feature sets are
> reffered in one build which might confuse resolver.
>
> Can you do similar deduction for your build and see if similar situation
> occurs there too?
>
> Best regards,
> Łukasz
>
>
> On 27.09.2021 15:25, Thomas Driessen wrote:
> > Hi J.B. :)
> >
> > just wanted to ask if you did find some spare time to have a look at
> > that issue?
> >
> > Kind regards,
> > Thomas
> >
> > Am Mo., 20. Sept. 2021 um 07:50 Uhr schrieb Thomas Driessen
> > <thomas.driessen...@gmail.com <mailto:thomas.driessen...@gmail.com>>:
> >
> >     Hi J.B.,
> >
> >     I've sent you the contents directly to your email :)
> >
> >     Am Mo., 20. Sept. 2021 um 07:43 Uhr schrieb Jean-Baptiste Onofre
> >     <j...@nanthrax.net <mailto:j...@nanthrax.net>>:
> >
> >         Hi Thomas,
> >
> >         Would it be possible to have your features definition ? I will
> >         be able to take a look.
> >
> >         Thanks
> >         Regards
> >         JB
> >
> >          > Le 20 sept. 2021 à 07:27, Thomas Driessen
> >         <thomas.driessen...@gmail.com
> >         <mailto:thomas.driessen...@gmail.com>> a écrit :
> >          >
> >          > Hi J.B. , hi Francois,
> >          >
> >          > thanks for your quick answer and sorry for the delay.
> >          >
> >          > Is there any way to detect such a cycle, i.e. is there a
> >         command such as feature:tree like for the dependency tree in
> >         maven that could help me identifying such cycles?
> >          >
> >          > Strange thing is: the exact same setup worked fine with Karaf
> >         4.3.2. So probably one of our referenced features in other
> >         feature repositories causes this behavior.
> >          >
> >          >
> >          > Kind regards,
> >          > Thomas
> >          >
> >          > Am Sa., 18. Sept. 2021 um 06:22 Uhr schrieb Jean-Baptiste
> >         Onofre <j...@nanthrax.net <mailto:j...@nanthrax.net>>:
> >          > Hi Thomas,
> >          >
> >          > I think you have a loop in your features (a feature A require
> >         feature B that require feature A).
> >          >
> >          > I know that Pax CDI has a cycle like this (I have a fix but
> >         not yet released).
> >          >
> >          > Regards
> >          > JB
> >          >
> >          > > Le 17 sept. 2021 à 17:00, Thomas Driessen
> >         <thomas.driessen...@gmail.com
> >         <mailto:thomas.driessen...@gmail.com>> a écrit :
> >          > >
> >          > > Hi,
> >          > >
> >          > > we just updated to the new Karaf 4.3.3 and suddenly we
> >         always get a StackOverflowError as soon as we try to do a
> >         feature:refresh:
> >          > >
> >          > > 2021-09-17T14:56:44,239 | ERROR | Karaf local console user
> >         karaf | ShellUtil                        | 44 -
> >         org.apache.karaf.shell.core - 4.3.3 | Exception caught while
> >         executing command
> >          > > java.util.concurrent.ExecutionException:
> >         java.lang.StackOverflowError
> >          > >         at
> >         java.util.concurrent.FutureTask.report(FutureTask.java:122)
> ~[?:?]
> >          > >         at
> >         java.util.concurrent.FutureTask.get(FutureTask.java:191) ~[?:?]
> >          > >         at
> >
>  
> org.apache.felix.gogo.runtime.CommandSessionImpl$JobImpl.run(CommandSessionImpl.java:855)
> >         ~[?:?]
> >          > >         at
> >
>  java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
> >         ~[?:?]
> >          > >         at
> >         java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
> >          > >         at
> >
>  
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
> >         ~[?:?]
> >          > >         at
> >
>  
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
> >         ~[?:?]
> >          > >         at java.lang.Thread.run(Thread.java:829) [?:?]
> >          > > Caused by: java.lang.StackOverflowError
> >          > >         at
> >
>  
> org.apache.karaf.features.internal.region.Subsystem.<init>(Subsystem.java:149)
> >         ~[?:?]
> >          > >         at
> >
>  
> org.apache.karaf.features.internal.region.SubsystemResolver.prepare(SubsystemResolver.java:127)
> >         ~[?:?]
> >          > >         at
> >
>  org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:390)
> >         ~[?:?]
> >          > >         at
> >
>  
> org.apache.karaf.features.internal.service.Deployer.handlePrerequisites(Deployer.java:1121)
> >         ~[?:?]
> >          > >         at
> >
>  org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:394)
> >         ~[?:?]
> >          > >         at
> >
>  
> org.apache.karaf.features.internal.service.Deployer.handlePrerequisites(Deployer.java:1121)
> >         ~[?:?]
> >          > >         at
> >
>  org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:394)
> >         ~[?:?]
> >          > >         at
> >
>  
> org.apache.karaf.features.internal.service.Deployer.handlePrerequisites(Deployer.java:1121)
> >         ~[?:?]
> >          > >         at
> >
>  org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:394)
> >         ~[?:?]
> >          > >         at
> >
>  
> org.apache.karaf.features.internal.service.Deployer.handlePrerequisites(Deployer.java:1121)
> >         ~[?:?]
> >          > >         at
> >
>  org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:394)
> >         ~[?:?]
> >          > >         at
> >
>  
> org.apache.karaf.features.internal.service.Deployer.handlePrerequisites(Deployer.java:1121)
> >         ~[?:?]
> >          > >         at
> >
>  org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:394)
> >         ~[?:?]
> >          > >         at
> >
>  
> org.apache.karaf.features.internal.service.Deployer.handlePrerequisites(Deployer.java:1121)
> >         ~[?:?]
> >          > >         at
> >
>  org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:394)
> >         ~[?:?]
> >          > >         at
> >
>  
> org.apache.karaf.features.internal.service.Deployer.handlePrerequisites(Deployer.java:1121)
> >         ~[?:?]
> >          > >         at
> >
>  org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:394)
> >         ~[?:?]
> >          > >         at
> >
>  
> org.apache.karaf.features.internal.service.Deployer.handlePrerequisites(Deployer.java:1121)
> >         ~[?:?]
> >          > >         at
> >
>  org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:394)
> >         ~[?:?]
> >          > >
> >          > > Is this a known bug? Or is there anyone else experiencing
> this?
> >          > >
> >          > > Kind regards,
> >          > > Thomas
> >          >
> >
>

Reply via email to