-
Bug
-
Resolution: Done
-
Blocker
-
7.1.0.ER3
-
None
This issue was hit during pre-testing of fixes for EAP 7.1.0.ER3. After the discussion with kkhan1@redhat.com and bstansberry it was decided to create new Jira for the issue.
Test scenario:
- There are 4 EAP servers.
- Servers 1, 3 are in cluster. They hold messages and they will be referenced in this text as JMS servers.
- Servers 2, 4 are not in cluster. They have RA configured to connect to servers 1 and 3 using discovery-group, which uses JGroups. They have MDBs which resend messages from InQueue to OutQueue. Servers 2, 4 will be referenced in this text as MDB servers.
Expectation: MDBs on MDB servers are able to discover and conenct to JMS servers.
Reality: During activation of resource adapter on MDB servers, NPE is thrown.
Customer impact: Resource adapter cannot be configured to dynamically discover JMS servers.
This is regression against 7.0.z.
This issue wasn't hit before, because with EAP 7.1.0.ER3 the server did not start with this configuration. See JBEAP-12526 for details.
Detail description of issue
The following NPE arises when MDBs on MDB servers tries to connect to JMS servers via pooled-connection-factory configured to use JGroups for discovery.
org.apache.activemq.artemis.ra.inflow.ActiveMQActivationSpec(ra=org.apache.activemq.artemis.ra.ActiveMQResourceAdapter@e77d2b4c destination=jms/queue/InQueue destinationType=javax.jms.Queue ack=Auto-acknowledge durable=false clientID=null user=null maxSession=15): ActiveMQInternalErrorException[errorType=INTERNAL_ERROR message=AMQ119004: Failed to initialise session factory] at org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.initialise(ServerLocatorImpl.java:308) [artemis-core-client-1.5.5.006-redhat-1.jar:1.5.5.006-redhat-1] at org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.createSessionFactory(ServerLocatorImpl.java:741) [artemis-core-client-1.5.5.006-redhat-1.jar:1.5.5.006-redhat-1] at org.apache.activemq.artemis.ra.inflow.ActiveMQActivation.setup(ActiveMQActivation.java:311) [artemis-ra-1.5.5.006-redhat-1.jar:1.5.5.006-redhat-1] at org.apache.activemq.artemis.ra.inflow.ActiveMQActivation.reconnect(ActiveMQActivation.java:658) [artemis-ra-1.5.5.006-redhat-1.jar:1.5.5.006-redhat-1] at org.apache.activemq.artemis.ra.inflow.ActiveMQActivation$SetupActivation.run(ActiveMQActivation.java:698) [artemis-ra-1.5.5.006-redhat-1.jar:1.5.5.006-redhat-1] at org.jboss.jca.core.workmanager.WorkWrapper.runWork(WorkWrapper.java:445) at org.jboss.as.connector.services.workmanager.WildflyWorkWrapper.runWork(WildflyWorkWrapper.java:68) at org.jboss.jca.core.workmanager.WorkWrapper.run(WorkWrapper.java:223) at org.jboss.threads.SimpleDirectExecutor.execute(SimpleDirectExecutor.java:33) at org.jboss.threads.QueueExecutor.runTask(QueueExecutor.java:808) at org.jboss.threads.QueueExecutor.access$100(QueueExecutor.java:45) at org.jboss.threads.QueueExecutor$Worker.run(QueueExecutor.java:828) at java.lang.Thread.run(Thread.java:748) [rt.jar:1.8.0_131] at org.jboss.threads.JBossThread.run(JBossThread.java:320) Caused by: java.lang.NullPointerException at org.apache.activemq.artemis.api.core.jgroups.JChannelWrapper.<init>(JChannelWrapper.java:50) [artemis-core-client-1.5.5.006-redhat-1.jar:1.5.5.006-redhat-1] at org.apache.activemq.artemis.api.core.jgroups.JChannelManager.getJChannel(JChannelManager.java:74) [artemis-core-client-1.5.5.006-redhat-1.jar:1.5.5.006-redhat-1] at org.apache.activemq.artemis.api.core.JGroupsBroadcastEndpoint.initChannel(JGroupsBroadcastEndpoint.java:108) [artemis-core-client-1.5.5.006-redhat-1.jar:1.5.5.006-redhat-1] at org.apache.activemq.artemis.api.core.ChannelBroadcastEndpointFactory.createBroadcastEndpoint(ChannelBroadcastEndpointFactory.java:72) [artemis-core-client-1.5.5.006-redhat-1.jar:1.5.5.006-redhat-1] at org.apache.activemq.artemis.core.cluster.DiscoveryGroup.<init>(DiscoveryGroup.java:95) [artemis-core-client-1.5.5.006-redhat-1.jar:1.5.5.006-redhat-1] at org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.createDiscoveryGroup(ServerLocatorImpl.java:315) [artemis-core-client-1.5.5.006-redhat-1.jar:1.5.5.006-redhat-1] at org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.initialise(ServerLocatorImpl.java:300) [artemis-core-client-1.5.5.006-redhat-1.jar:1.5.5.006-redhat-1] ... 13 more
- is caused by
-
JBEAP-11799 Artemis leaks JGroups channels on reload
- Closed
- is cloned by
-
WFLY-9246 discovery-group does not work for pooled-connection-factory because of NPE
- Closed
- is related to
-
JBEAP-12526 pooled-connection-factory doesn't allow to use "discovery-group" attribute as endpoint
- Closed