[
https://issues.apache.org/jira/browse/ARTEMIS-3665?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17499079#comment-17499079
]
Jan Filipski commented on ARTEMIS-3665:
---------------------------------------
sure. I have detailed NPE from JDK17 :)
Client receives topology with 4 entries, two of them has nulls on "A" element.
If client uses loadbalancing, it will try to open connections based on
topology, with faulty entry.
I think is not reproducible on fresh server installation (with recreated
cluster topology), but I can't delete artemis data on cluster. I'm not familiar
with Artemis internals.
{code:java}
javax.jms.JMSException: Failed to create session factory
at
org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.createConnectionInternal(ActiveMQConnectionFactory.java:867)
~[?:?]
at
org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:284)
~[?:?]
at
org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:279)
~[?:?]
at
org.messaginghub.pooled.jms.JmsPoolConnectionFactory.createProviderConnection(JmsPoolConnectionFactory.java:661)
~[?:?]
at
org.messaginghub.pooled.jms.JmsPoolConnectionFactory$1.makeObject(JmsPoolConnectionFactory.java:108)
~[?:?]
at
org.messaginghub.pooled.jms.JmsPoolConnectionFactory$1.makeObject(JmsPoolConnectionFactory.java:105)
~[?:?]
at
org.apache.commons.pool2.impl.GenericKeyedObjectPool.create(GenericKeyedObjectPool.java:1073)
~[?:?]
at
org.apache.commons.pool2.impl.GenericKeyedObjectPool.addObject(GenericKeyedObjectPool.java:1279)
~[?:?]
at
org.messaginghub.pooled.jms.JmsPoolConnectionFactory.createJmsPoolConnection(JmsPoolConnectionFactory.java:715)
~[?:?]
at
org.messaginghub.pooled.jms.JmsPoolConnectionFactory.createConnection(JmsPoolConnectionFactory.java:247)
~[?:?]
at
org.messaginghub.pooled.jms.JmsPoolConnectionFactory.createConnection(JmsPoolConnectionFactory.java:242)
~[?:?]
at Proxy5a7fd605_7148_4f32_bb40_d21fd081d2b6.createConnection(Unknown
Source) ~[?:?]
... 39 more
Caused by: java.lang.NullPointerException: Cannot invoke
"org.apache.activemq.artemis.api.core.TransportConfiguration.getFactoryClassName()"
because the return value of "org.apache.activemq.artemis.api.core.Pair.getA()"
is null
at
org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.<init>(ClientSessionFactoryImpl.java:192)
~[?:?]
at
org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.createSessionFactory(ServerLocatorImpl.java:683)
~[?:?]
at
org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.createConnectionInternal(ActiveMQConnectionFactory.java:865)
~[?:?]
at
org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:284)
~[?:?]
at
org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:279)
~[?:?]
at
org.messaginghub.pooled.jms.JmsPoolConnectionFactory.createProviderConnection(JmsPoolConnectionFactory.java:661)
~[?:?]
at
org.messaginghub.pooled.jms.JmsPoolConnectionFactory$1.makeObject(JmsPoolConnectionFactory.java:108)
~[?:?]
at
org.messaginghub.pooled.jms.JmsPoolConnectionFactory$1.makeObject(JmsPoolConnectionFactory.java:105)
~[?:?]
at
org.apache.commons.pool2.impl.GenericKeyedObjectPool.create(GenericKeyedObjectPool.java:1073)
~[?:?]
at
org.apache.commons.pool2.impl.GenericKeyedObjectPool.addObject(GenericKeyedObjectPool.java:1279)
~[?:?]
at
org.messaginghub.pooled.jms.JmsPoolConnectionFactory.createJmsPoolConnection(JmsPoolConnectionFactory.java:715)
~[?:?]
at
org.messaginghub.pooled.jms.JmsPoolConnectionFactory.createConnection(JmsPoolConnectionFactory.java:247)
~[?:?]
at
org.messaginghub.pooled.jms.JmsPoolConnectionFactory.createConnection(JmsPoolConnectionFactory.java:242)
~[?:?]
at Proxy5a7fd605_7148_4f32_bb40_d21fd081d2b6.createConnection(Unknown
Source) ~[?:?]
... 39 more{code}
> NullPointerException in ServerLocator.createSessionFactory
> ----------------------------------------------------------
>
> Key: ARTEMIS-3665
> URL: https://issues.apache.org/jira/browse/ARTEMIS-3665
> Project: ActiveMQ Artemis
> Issue Type: Bug
> Affects Versions: 2.17.0
> Environment: Linux version 3.10.0-1160.49.1.el7.x86_64
> ([email protected]) (gcc version 4.8.5 20150623 (Red Hat
> 4.8.5-44) (GCC) ) #1 SMP Tue Nov 30 15:51:32 UTC 2021
> Artemis 2.17.0
> Connection string is:
> (tcp://ba-artms21.qa.raveu.net:61616,tcp://ba-artms22.qa.raveu.net:61616)
> Reporter: Stephen Baker
> Assignee: Clebert Suconic
> Priority: Major
> Fix For: 2.20.0
>
>
> In one environment I am frequently seeing a {{NullPointerException}} in
> {{ServerLocator.createSessionFactory()}}:
> {noformat}
> java.lang.NullPointerException
> at
> org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.<init>(ClientSessionFactoryImpl.java:189
> at
> org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.createSessionFactory(ServerLocatorImpl.java:683){noformat}
> The line in the report is:
> {noformat}
> connectorFactory =
> instantiateConnectorFactory(connectorConfig.getA().getFactoryClassName());{noformat}
> Unfortunately I'm not able to reproduce in my development environment which
> makes debugging difficult.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)