Artemis v2.1 Spring MessageListener Netty StackOverflow

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
18 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Artemis v2.1 Spring MessageListener Netty StackOverflow

abhijith
This post was updated on .
Hi all,

We are facing a weird issue while using Spring DefaultMessageListenerContainer with Artemis v2.1 client.

We have below piece of code on our custom policy which is run on a Solaris box.
try (ServerLocatorImpl serverLocator = new ServerLocatorImpl(false, transportConfiguration)) {
            serverLocator.setCallTimeout(3000);
            serverLocator.createSessionFactory();
}

The same piece of code was working on Artemis 1.4.  But with 2.1, netty is giving a stack overflow error.  We use the same piece of code for publisher and that works fine.  Its only happening when we bring in Spring MessageListenerContainer.  Not sure why this is happening.  I know netty library was updated.  I tried to use netty-all:4.1.12-final to see if the issue is resolved with no success.  Can I just revert back to previous netty version?  any help is really appretiated.  

Caused by: java.lang.StackOverflowError
        at java.util.zip.ZipCoder.getBytes(ZipCoder.java:86)
        at java.util.zip.ZipFile.getInputStream(ZipFile.java:355)
        at java.util.jar.JarFile.getInputStream(JarFile.java:447)
        at sun.misc.URLClassPath$JarLoader$2.getInputStream(URLClassPath.java:977)
        at sun.misc.Resource.cachedInputStream(Resource.java:77)
        at sun.misc.Resource.getByteBuffer(Resource.java:160)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:454)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at io.netty.util.ConstantPool.<init>(ConstantPool.java:32)
        at io.netty.util.AttributeKey$1.<init>(AttributeKey.java:27)
        at io.netty.util.AttributeKey.<clinit>(AttributeKey.java:27)
        at org.apache.activemq.artemis.core.remoting.impl.netty.NettyConnector.<clinit>(NettyConnector.java:137)
        at org.apache.activemq.artemis.core.remoting.impl.netty.NettyConnectorFactory.createConnector(NettyConnectorFactory.java:39)
        at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.createConnector(ClientSessionFactoryImpl.java:1053)
        at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.createTransportConnection(ClientSessionFactoryImpl.java:1074)
        at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.establishNewConnection(ClientSessionFactoryImpl.java:1254)
        at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.getConnection(ClientSessionFactoryImpl.java:891)
        at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.getConnectionWithRetry(ClientSessionFactoryImpl.java:795)
        at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.connect(ClientSessionFactoryImpl.java:238)
        at org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.createSessionFactory(ServerLocatorImpl.java:772)


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Artemis v2.1 Spring MessageListener Netty StackOverflow

Justin Bertram
What do you mean by "custom policy"?


Justin

On Fri, Jun 30, 2017 at 3:18 PM, abhijith <[hidden email]>
wrote:

> Hi all,
>
> We are facing a weird issue while using Spring
> DefaultMessageListenerContainer with Artemis v2.1 client.
>
> We have below piece of code on our custom policy which is run on a Solaris
> box.
> try (ServerLocatorImpl serverLocator = new ServerLocatorImpl(false,
> transportConfiguration)) {
>             serverLocator.setCallTimeout(3000);
>             serverLocator.createSessionFactory();
> }
>
> The same piece of code was working on Artemis 1.4.  But with 2.1, netty is
> giving a stack overflow error.  Not sure why this is happening.  I know
> netty library was updated.  I tried to use netty-all:4.1.12-final to see if
> the issue is resolved with no success.  Can I just revert back to previous
> netty version?  any help is really appretiated.
>
> Caused by: java.lang.StackOverflowError
>         at java.util.zip.ZipCoder.getBytes(ZipCoder.java:86)
>         at java.util.zip.ZipFile.getInputStream(ZipFile.java:355)
>         at java.util.jar.JarFile.getInputStream(JarFile.java:447)
>         at
> sun.misc.URLClassPath$JarLoader$2.getInputStream(URLClassPath.java:977)
>         at sun.misc.Resource.cachedInputStream(Resource.java:77)
>         at sun.misc.Resource.getByteBuffer(Resource.java:160)
>         at java.net.URLClassLoader.defineClass(URLClassLoader.java:454)
>         at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>         at java.lang.ClassLoader.defineClass1(Native Method)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
>         at
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
>         at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
>         at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>         at java.lang.ClassLoader.defineClass1(Native Method)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
>         at
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
>         at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
>         at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>         at java.lang.ClassLoader.defineClass1(Native Method)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
>         at
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
>         at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
>         at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>         at java.lang.ClassLoader.defineClass1(Native Method)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
>         at
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
>         at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
>         at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>         at java.lang.ClassLoader.defineClass1(Native Method)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
>         at
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
>         at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
>         at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>         at java.lang.ClassLoader.defineClass1(Native Method)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
>         at
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
>         at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
>         at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>         at java.lang.ClassLoader.defineClass1(Native Method)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
>         at
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
>         at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
>         at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>         at java.lang.ClassLoader.defineClass1(Native Method)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
>         at
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
>         at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
>         at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>         at java.lang.ClassLoader.defineClass1(Native Method)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
>         at
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
>         at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
>         at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>         at io.netty.util.ConstantPool.<init>(ConstantPool.java:32)
>         at io.netty.util.AttributeKey$1.<init>(AttributeKey.java:27)
>         at io.netty.util.AttributeKey.<clinit>(AttributeKey.java:27)
>         at
> org.apache.activemq.artemis.core.remoting.impl.netty.
> NettyConnector.<clinit>(NettyConnector.java:137)
>         at
> org.apache.activemq.artemis.core.remoting.impl.netty.
> NettyConnectorFactory.createConnector(NettyConnectorFactory.java:39)
>         at
> org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.
> createConnector(ClientSessionFactoryImpl.java:1053)
>         at
> org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.
> createTransportConnection(ClientSessionFactoryImpl.java:1074)
>         at
> org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.
> establishNewConnection(ClientSessionFactoryImpl.java:1254)
>         at
> org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.
> getConnection(ClientSessionFactoryImpl.java:891)
>         at
> org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.
> getConnectionWithRetry(ClientSessionFactoryImpl.java:795)
>         at
> org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.
> connect(ClientSessionFactoryImpl.java:238)
>         at
> org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.
> createSessionFactory(ServerLocatorImpl.java:772)
>
>
>
>
>
>
> --
> View this message in context: http://activemq.2283324.n4.
> nabble.com/Artemis-v2-1-Spring-MessageListener-Netty-
> StackOverflow-tp4728139.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Artemis v2.1 Spring MessageListener Netty StackOverflow

abhijith
We have a load balancer in front on Artemis which does ssl offloading.  To handle this we have custom ConnectionLoadBalancingPolicy.  This policy determines which transport configuration to use for initial connection
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Artemis v2.1 Spring MessageListener Netty StackOverflow

Justin Bertram
Is that the full stack-trace?  I imagine there is something before the call
to org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.
createSessionFactory().

Also, this Netty issue [1] looks similar.  It involves a stack overflow
with Spring and java.security.SecureClassLoader.defineClass().  The
reporter apparently didn't provide a reproducible test-case.  Do you have
an available test-case which reproduces this?


Justin

[1] https://github.com/netty/netty/issues/6732

On Fri, Jun 30, 2017 at 3:53 PM, abhijith <[hidden email]>
wrote:

> We have a load balancer in front on Artemis which does ssl offloading.  To
> handle this we have custom ConnectionLoadBalancingPolicy.  This policy
> determines which transport configuration to use for initial connection
>
>
>
> --
> View this message in context: http://activemq.2283324.n4.
> nabble.com/Artemis-v2-1-Spring-MessageListener-Netty-StackOverflow-
> tp4728139p4728141.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Artemis v2.1 Spring MessageListener Netty StackOverflow

abhijith
This post was updated on .
Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'messageListenerContainer' defined in c.p.c.MySpringConfiguration: Invocation of init method failed; nested exception is java.lang.StackOverflowError
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1628)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:555)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:761)
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:867)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543)
        at c.p.c.MySpringApplicationContainer.startComponent(MySpringApplicationContainer.java:78)
        at org.picocontainer.injectors.AbstractInjectionFactory$LifecycleAdapter.start(AbstractInjectionFactory.java:84)
        at org.picocontainer.behaviors.AbstractBehavior.start(AbstractBehavior.java:169)
        at org.picocontainer.behaviors.Stored$RealComponentLifecycle.start(Stored.java:132)
        at org.picocontainer.behaviors.Stored.start(Stored.java:110)
        at org.picocontainer.DefaultPicoContainer.decorateComponent(DefaultPicoContainer.java:671)
        at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:657)
        at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:677)
        at c.p.c.MyEngineBuilder.installApplication(MyEngineBuilder.java:442)
Caused by: java.lang.StackOverflowError
        at java.util.HashMap.hash(HashMap.java:338)
        at java.util.HashMap.get(HashMap.java:556)
        at java.util.jar.Manifest.getAttributes(Manifest.java:126)
        at java.net.URLClassLoader.isSealed(URLClassLoader.java:542)
        at java.net.URLClassLoader.getAndVerifyPackage(URLClassLoader.java:405)
        at java.net.URLClassLoader.definePackageInternal(URLClassLoader.java:419)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:451)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at io.netty.util.ConstantPool.<init>(ConstantPool.java:32)
        at io.netty.util.AttributeKey$1.<init>(AttributeKey.java:27)
        at io.netty.util.AttributeKey.<clinit>(AttributeKey.java:27)
        at org.apache.activemq.artemis.core.remoting.impl.netty.NettyConnector.<clinit>(NettyConnector.java:137)
        at org.apache.activemq.artemis.core.remoting.impl.netty.NettyConnectorFactory.createConnector(NettyConnectorFactory.java:39)
        at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.createConnector(ClientSessionFactoryImpl.java:1053)
        at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.createTransportConnection(ClientSessionFactoryImpl.java:1074)
        at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.establishNewConnection(ClientSessionFactoryImpl.java:1254)
        at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.getConnection(ClientSessionFactoryImpl.java:891)
        at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.getConnectionWithRetry(ClientSessionFactoryImpl.java:795)
        at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.connect(ClientSessionFactoryImpl.java:238)
        at org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.createSessionFactory(ServerLocatorImpl.java:772)
        at c.p.c.loadbalance.VIPConnectPolicy.connect(VIPConnectPolicy.java:29)
        at c.p.c.loadbalance.AbstractLoadBalancingPolicy.select(AbstractLoadBalancingPolicy.java:44)
        at org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.selectConnector(ServerLocatorImpl.java:552)
        at org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.createSessionFactory(ServerLocatorImpl.java:761)
        at org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.createConnectionInternal(ActiveMQConnectionFactory.java:755)
        at org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:265)
        at org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:260)
        at org.springframework.jms.support.JmsAccessor.createConnection(JmsAccessor.java:180)
        at org.springframework.jms.listener.AbstractJmsListeningContainer.createSharedConnection(AbstractJmsListeningContainer.java:413)
        at org.springframework.jms.listener.AbstractJmsListeningContainer.establishSharedConnection(AbstractJmsListeningContainer.java:381)
        at org.springframework.jms.listener.DefaultMessageListenerContainer.establishSharedConnection(DefaultMessageListenerContainer.java:803)
        at org.springframework.jms.listener.AbstractJmsListeningContainer.doStart(AbstractJmsListeningContainer.java:285)
        at org.springframework.jms.listener.AbstractJmsListeningContainer.start(AbstractJmsListeningContainer.java:270)
        at org.springframework.jms.listener.DefaultMessageListenerContainer.start(DefaultMessageListenerContainer.java:598)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1758)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1695)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1624)
    ... 23 more
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Artemis v2.1 Spring MessageListener Netty StackOverflow

Justin Bertram
In reply to this post by Justin Bertram
FWIW, it appears this commit [1] from 2013 is the one that changed the
behavior as compared to Netty 4.0.39.Final which was used in Artemis
1.4.0.  That commit is in every version of Netty 4.1 so it's not surprising
you saw the same behavior using 4.1.12.Final.

As far as reverting back to a pre-4.1 version of Netty, I can't whether or
not that would still work properly with Artemis.  You can certainly give it
a shot.


Justin

[1]
https://github.com/netty/netty/commit/b533a1361bbbc457c974ca365f8293ec27ffda1c

On Fri, Jun 30, 2017 at 4:22 PM, Justin Bertram <[hidden email]> wrote:

> Is that the full stack-trace?  I imagine there is something before the
> call to org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.
> createSessionFactory().
>
> Also, this Netty issue [1] looks similar.  It involves a stack overflow
> with Spring and java.security.SecureClassLoader.defineClass().  The
> reporter apparently didn't provide a reproducible test-case.  Do you have
> an available test-case which reproduces this?
>
>
> Justin
>
> [1] https://github.com/netty/netty/issues/6732
>
> On Fri, Jun 30, 2017 at 3:53 PM, abhijith <[hidden email]>
> wrote:
>
>> We have a load balancer in front on Artemis which does ssl offloading.  To
>> handle this we have custom ConnectionLoadBalancingPolicy.  This policy
>> determines which transport configuration to use for initial connection
>>
>>
>>
>> --
>> View this message in context: http://activemq.2283324.n4.nab
>> ble.com/Artemis-v2-1-Spring-MessageListener-Netty-StackOve
>> rflow-tp4728139p4728141.html
>> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>>
>
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Artemis v2.1 Spring MessageListener Netty StackOverflow

abhijith
In reply to this post by abhijith
Please find above stacktrace.  I will try to get test case for this, but it is not repeatable on my Mac.  I can get this only on Solaris.  Will see if I can repeat it consistently.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Artemis v2.1 Spring MessageListener Netty StackOverflow

Justin Bertram
The actual problem occurs in a call to
PlatformDependent.newConcurrentHashMap() introduced here [1] in Netty
4.1.5.Final.  Try using Netty 4.1.4.Final.  If the behavior here really is
platform dependent that might explain why you're only seeing it on Solaris.


Justin

[1]
https://github.com/netty/netty/commit/c6a13e28b93b7b4d1f99f556cc894765a4c8e2f1

On Fri, Jun 30, 2017 at 4:36 PM, abhijith <[hidden email]>
wrote:

> Please find above stacktrace.  I will try to get test case for this, but it
> is not repeatable on my Mac.  I can get this only on Solaris.  Will see if
> I
> can repeat it consistently.
>
>
>
> --
> View this message in context: http://activemq.2283324.n4.
> nabble.com/Artemis-v2-1-Spring-MessageListener-Netty-StackOverflow-
> tp4728139p4728146.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Artemis v2.1 Spring MessageListener Netty StackOverflow

Justin Bertram
In any event, it appears this is a Netty issue so it would probably be best
to work with the Netty community on it.


Justin

On Fri, Jun 30, 2017 at 5:00 PM, Justin Bertram <[hidden email]> wrote:

> The actual problem occurs in a call to PlatformDependent.newConcurrentHashMap()
> introduced here [1] in Netty 4.1.5.Final.  Try using Netty 4.1.4.Final.  If
> the behavior here really is platform dependent that might explain why
> you're only seeing it on Solaris.
>
>
> Justin
>
> [1] https://github.com/netty/netty/commit/c6a13e28b93b7b4d1f99f556cc8947
> 65a4c8e2f1
>
> On Fri, Jun 30, 2017 at 4:36 PM, abhijith <[hidden email]>
> wrote:
>
>> Please find above stacktrace.  I will try to get test case for this, but
>> it
>> is not repeatable on my Mac.  I can get this only on Solaris.  Will see
>> if I
>> can repeat it consistently.
>>
>>
>>
>> --
>> View this message in context: http://activemq.2283324.n4.nab
>> ble.com/Artemis-v2-1-Spring-MessageListener-Netty-StackOve
>> rflow-tp4728139p4728146.html
>> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>>
>
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Artemis v2.1 Spring MessageListener Netty StackOverflow

abhijith
Thanks Justin...appreciate your quick help on this.  Looks like v4.1.4.final is working.  Will run some more tests and confirm next week.

It is netty issue and I will raise a bug for them. But, since Artemis is really dependent on this, should Artemis have netty 4.1.4.final dependency instead of 4.1.9.final??
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Artemis v2.1 Spring MessageListener Netty StackOverflow

abhijith
https://github.com/netty/netty/issues/6931  -- Opened an issue in Netty backlog
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Artemis v2.1 Spring MessageListener Netty StackOverflow

Justin Bertram
In reply to this post by abhijith
The issue seems isolated to Spring + Solaris at this point so I don't think
there's reason to change the dependency right now - especially since
there's a workaround (i.e. downgrading to 4.1.4).  That said, if we find
the issue isn't quite so isolated and/or the Netty developers are slow to
resolve the issue then we'd probably want to revisit this.


Justin

On Fri, Jun 30, 2017 at 4:58 PM, abhijith <[hidden email]>
wrote:

> Thanks Justin...appreciate your quick help on this.  Looks like
> v4.1.4.final
> is working.  Will run some more tests and confirm next week.
>
> It is netty issue and I will raise a bug for them. But, since Artemis is
> really dependent on this, should Artemis have netty 4.1.4.final dependency
> instead of 4.1.9.final??
>
>
>
> --
> View this message in context: http://activemq.2283324.n4.
> nabble.com/Artemis-v2-1-Spring-MessageListener-Netty-StackOverflow-
> tp4728139p4728149.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Artemis v2.1 Spring MessageListener Netty StackOverflow

clebertsuconic
If you have a way to replicate it... Norman was looking for a
replicator on that thread. He's usually responsive if it's easy to
replicate.. (him or other guys maintaining netty).

if you have an easy way to replicate.. don't be shy.. talk on the
netty issue Justin showed you.

On Fri, Jun 30, 2017 at 8:07 PM, Justin Bertram <[hidden email]> wrote:

> The issue seems isolated to Spring + Solaris at this point so I don't think
> there's reason to change the dependency right now - especially since
> there's a workaround (i.e. downgrading to 4.1.4).  That said, if we find
> the issue isn't quite so isolated and/or the Netty developers are slow to
> resolve the issue then we'd probably want to revisit this.
>
>
> Justin
>
> On Fri, Jun 30, 2017 at 4:58 PM, abhijith <[hidden email]>
> wrote:
>
>> Thanks Justin...appreciate your quick help on this.  Looks like
>> v4.1.4.final
>> is working.  Will run some more tests and confirm next week.
>>
>> It is netty issue and I will raise a bug for them. But, since Artemis is
>> really dependent on this, should Artemis have netty 4.1.4.final dependency
>> instead of 4.1.9.final??
>>
>>
>>
>> --
>> View this message in context: http://activemq.2283324.n4.
>> nabble.com/Artemis-v2-1-Spring-MessageListener-Netty-StackOverflow-
>> tp4728139p4728149.html
>> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>>



--
Clebert Suconic
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Artemis v2.1 Spring MessageListener Netty StackOverflow

MichaelAndrePearce

The chm was removed in Feb, does this occur if you use 4.1.12?

https://github.com/netty/netty/commit/84188395be36893b214fcf63cea1544e35b2a654

Sent from my iPad

> On 1 Jul 2017, at 02:12, Clebert Suconic <[hidden email]> wrote:
>
> If you have a way to replicate it... Norman was looking for a
> replicator on that thread. He's usually responsive if it's easy to
> replicate.. (him or other guys maintaining netty).
>
> if you have an easy way to replicate.. don't be shy.. talk on the
> netty issue Justin showed you.
>
>> On Fri, Jun 30, 2017 at 8:07 PM, Justin Bertram <[hidden email]> wrote:
>> The issue seems isolated to Spring + Solaris at this point so I don't think
>> there's reason to change the dependency right now - especially since
>> there's a workaround (i.e. downgrading to 4.1.4).  That said, if we find
>> the issue isn't quite so isolated and/or the Netty developers are slow to
>> resolve the issue then we'd probably want to revisit this.
>>
>>
>> Justin
>>
>> On Fri, Jun 30, 2017 at 4:58 PM, abhijith <[hidden email]>
>> wrote:
>>
>>> Thanks Justin...appreciate your quick help on this.  Looks like
>>> v4.1.4.final
>>> is working.  Will run some more tests and confirm next week.
>>>
>>> It is netty issue and I will raise a bug for them. But, since Artemis is
>>> really dependent on this, should Artemis have netty 4.1.4.final dependency
>>> instead of 4.1.9.final??
>>>
>>>
>>>
>>> --
>>> View this message in context: http://activemq.2283324.n4.
>>> nabble.com/Artemis-v2-1-Spring-MessageListener-Netty-StackOverflow-
>>> tp4728139p4728149.html
>>> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>>>
>
>
>
> --
> Clebert Suconic
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Artemis v2.1 Spring MessageListener Netty StackOverflow

MichaelAndrePearce
Ignore you stated already this is tried. My apologies

Sent from my iPad

> On 1 Jul 2017, at 06:14, Michael André Pearce <[hidden email]> wrote:
>
>
> The chm was removed in Feb, does this occur if you use 4.1.12?
>
> https://github.com/netty/netty/commit/84188395be36893b214fcf63cea1544e35b2a654
>
> Sent from my iPad
>
>> On 1 Jul 2017, at 02:12, Clebert Suconic <[hidden email]> wrote:
>>
>> If you have a way to replicate it... Norman was looking for a
>> replicator on that thread. He's usually responsive if it's easy to
>> replicate.. (him or other guys maintaining netty).
>>
>> if you have an easy way to replicate.. don't be shy.. talk on the
>> netty issue Justin showed you.
>>
>>> On Fri, Jun 30, 2017 at 8:07 PM, Justin Bertram <[hidden email]> wrote:
>>> The issue seems isolated to Spring + Solaris at this point so I don't think
>>> there's reason to change the dependency right now - especially since
>>> there's a workaround (i.e. downgrading to 4.1.4).  That said, if we find
>>> the issue isn't quite so isolated and/or the Netty developers are slow to
>>> resolve the issue then we'd probably want to revisit this.
>>>
>>>
>>> Justin
>>>
>>> On Fri, Jun 30, 2017 at 4:58 PM, abhijith <[hidden email]>
>>> wrote:
>>>
>>>> Thanks Justin...appreciate your quick help on this.  Looks like
>>>> v4.1.4.final
>>>> is working.  Will run some more tests and confirm next week.
>>>>
>>>> It is netty issue and I will raise a bug for them. But, since Artemis is
>>>> really dependent on this, should Artemis have netty 4.1.4.final dependency
>>>> instead of 4.1.9.final??
>>>>
>>>>
>>>>
>>>> --
>>>> View this message in context: http://activemq.2283324.n4.
>>>> nabble.com/Artemis-v2-1-Spring-MessageListener-Netty-StackOverflow-
>>>> tp4728139p4728149.html
>>>> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>>>>
>>
>>
>>
>> --
>> Clebert Suconic
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Artemis v2.1 Spring MessageListener Netty StackOverflow

abhijith
To close this loop, Netty guys suggested to increase stack size(Xss) instead of downgrading version.  Bumping stack size from 256K to 1024K worked and we don't see the error anymore.

Thanks everyone for quick help
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Artemis v2.1 Spring MessageListener Netty StackOverflow

clebertsuconic
Mind sharing the link where that was said? Just curious now.

On Thu, Jul 6, 2017 at 1:27 PM, abhijith <[hidden email]> wrote:

> To close this loop, Netty guys suggested to increase stack size(Xss) instead
> of downgrading version.  Bumping stack size from 256K to 1024K worked and we
> don't see the error anymore.
>
> Thanks everyone for quick help
>
>
>
> --
> View this message in context: http://activemq.2283324.n4.nabble.com/Artemis-v2-1-Spring-MessageListener-Netty-StackOverflow-tp4728139p4728286.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.



--
Clebert Suconic
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Artemis v2.1 Spring MessageListener Netty StackOverflow

abhijith
Loading...