]
ehsavoie Hugonnet moved JBEAP-12787 to WFLY-9246:
-------------------------------------------------
Project: WildFly (was: JBoss Enterprise Application Platform)
Key: WFLY-9246 (was: JBEAP-12787)
Workflow: GIT Pull Request workflow (was: CDW with loose statuses v1)
Component/s: JMS
(was: JMS)
Affects Version/s: 11.0.0.Beta1
(was: 7.1.0.ER3)
Affects Testing: (was: Regression)
discovery-group does not work for pooled-connection-factory because
of NPE
--------------------------------------------------------------------------
Key: WFLY-9246
URL:
https://issues.jboss.org/browse/WFLY-9246
Project: WildFly
Issue Type: Bug
Components: JMS
Affects Versions: 11.0.0.Beta1
Reporter: ehsavoie Hugonnet
Assignee: Paul Ferraro
Priority: Blocker
This issue was hit during pre-testing of fixes for EAP 7.1.0.ER3. After the discussion
with [~kabirkhan] 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.
{code}
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
{code}