[jboss-jira] [JBoss JIRA] (WFLY-10109) [Artemis 2.x upgrade] MDB connected to remote server does not get activated when using discovery group with JGroups
Jeff Mesnil (JIRA)
issues at jboss.org
Mon Apr 23 06:33:00 EDT 2018
[ https://issues.jboss.org/browse/WFLY-10109?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13565182#comment-13565182 ]
Jeff Mesnil commented on WFLY-10109:
------------------------------------
[~eduda] I fail to reproduce the issue locally and there is not a lot to glance from the failure at https://eap-qe-jenkins.rhev-ci-vms.eng.rdu2.redhat.com/job/eduda-verifier/44/. Could the issue be environmental?
However, there might be missing information from Artemis because the configuration you use should have reported some errors.
The configuration for node2 (which hosts the MDB) is:
{code}
<subsystem xmlns="urn:jboss:domain:messaging-activemq:3.1">
<server name="default" persistence-enabled="true" id-cache-size="20000">
...
<discovery-group name="dg-group1" jgroups-cluster="activemq-cluster" refresh-timeout="10000"/>
<pooled-connection-factory name="activemq-ra" entries="java:/JmsXA java:jboss/DefaultJMSConnectionFactory" discovery-group="dg-group1" ha="false" min-large-message-size="102400" block-on-acknowledge="false" retry-interval="2000" retry-interval-multiplier="1.0" reconnect-attempts="-1" transaction="xa" min-pool-size="-1" max-pool-size="-1">
<inbound-config rebalance-connections="true"/>
</pooled-connection-factory>
</server>
</subsystem>
{code}
The MDB is activated at 14:03:45
{code}
14:03:45,583 INFO [org.jboss.as.ejb3] (MSC service thread 1-7) WFLYEJB0042: Started message driven bean 'mdb1' with 'activemq-ra.rar' resource adapter
{code}
The RA configuration uses the default initial-connect-attempts of 1 and the discovery initial-wait-timeout is the default 10 seconds.
However, there is no info or warning before the server is shutdown at 14:04:36 (51 seconds later):
{code}
14:04:36,336 WARN [org.apache.activemq.artemis.ra] (default-threads - 1) AMQ152005: Failure in broker activation org.apache.activemq.artemis.ra.inflow.ActiveMQActivationSpec(ra=org.wildfly.extension.messaging.activemq.ActiveMQResourceAdapter at e77d2b4c destination=jms/queue/InQueue destinationType=javax.jms.Queue ack=Auto-acknowledge durable=false clientID=null user=null maxSession=15): ActiveMQConnectionTimedOutException[errorType=CONNECTION_TIMEDOUT message=AMQ119012: Timed out waiting to receive initial broadcast from cluster]
at org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.createSessionFactory(ServerLocatorImpl.java:761) [artemis-core-client-2.5.0.jar:2.6.0-SNAPSHOT]
at org.apache.activemq.artemis.ra.inflow.ActiveMQActivation.setup(ActiveMQActivation.java:307) [artemis-ra-2.5.0.jar:2.6.0-SNAPSHOT]
at org.apache.activemq.artemis.ra.inflow.ActiveMQActivation$SetupActivation.run(ActiveMQActivation.java:696) [artemis-ra-2.5.0.jar:2.6.0-SNAPSHOT]
at org.jboss.jca.core.workmanager.WorkWrapper.runWork(WorkWrapper.java:445)
at org.jboss.as.connector.services.workmanager.WildflyWorkWrapper.runWork(WildflyWorkWrapper.java:69)
at org.jboss.jca.core.workmanager.WorkWrapper.run(WorkWrapper.java:223)
at org.jboss.threads.SimpleDirectExecutor.execute(SimpleDirectExecutor.java:29)
at org.jboss.threads.QueueExecutor.runTask(QueueExecutor.java:789)
at org.jboss.threads.QueueExecutor.access$100(QueueExecutor.java:44)
at org.jboss.threads.QueueExecutor$Worker.run(QueueExecutor.java:809)
at java.lang.Thread.run(Thread.java:748) [rt.jar:1.8.0_162]
at org.jboss.threads.JBossThread.run(JBossThread.java:485)
{code}
I don't understand why Artemis did not throw this error 10 seconds after the MDB activation.
It seems that the call to org.apache.activemq.artemis.core.cluster.DiscoveryGroup#waitForBroadcast was unblocked when the node2 server was shutdown and not after the 10 seconds timeout
> [Artemis 2.x upgrade] MDB connected to remote server does not get activated when using discovery group with JGroups
> --------------------------------------------------------------------------------------------------------------------
>
> Key: WFLY-10109
> URL: https://issues.jboss.org/browse/WFLY-10109
> Project: WildFly
> Issue Type: Bug
> Components: JMS
> Reporter: Miroslav Novak
> Assignee: Jeff Mesnil
> Priority: Blocker
> Labels: feature-branch-blocker
> Attachments: log
>
>
> Sometimes happens that MDB does not start to consume messages from remote server. There are not warning or error messages in log.
> Test Scenario:
> * Start server with deployed InQueue and OutQueue
> * Start 2nd server with configured pooled-connection-factory to connect to 1st server
> * Deploy MDB to 2nd server - mdb is consuming messages from InQueue and sending to OutQueue
> * Start sending messages to InQueue to 1st server
> * Let MDB processing messages from InQueue
> * Start consuming messages from OutQueue from 1st server
> Pass Criteria: There is the same number of sent and received messages
> Actual Result: Sometimes happens that Mdb does not start to consume messages.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
More information about the jboss-jira
mailing list