Uploaded image for project: 'WildFly WIP'
  1. WildFly WIP
  2. WFWIP-39

Regression in JMS bridge with network failures tests

    Details

    • Steps to Reproduce:
      Hide
      git clone git://git.app.eng.bos.redhat.com/jbossqe/eap-tests-hornetq.git
      cd eap-tests-hornetq/scripts/
      groovy -DEAP_ZIP_URL=<CURRENT_DIST_URL> PrepareServers7.groovy
      export WORKSPACE=$PWD
      export JBOSS_HOME_1=$WORKSPACE/server1/jboss-eap
      export JBOSS_HOME_2=$WORKSPACE/server2/jboss-eap
      export JBOSS_HOME_3=$WORKSPACE/server3/jboss-eap
      export JBOSS_HOME_4=$WORKSPACE/server4/jboss-eap
      
      cd ../jboss-hornetq-testsuite/
      mvn clean test -Dtest=NetworkFailuresJMSBridgesTestCase#testShortNetworkFailureMixMessages1recAttempts -Deap7.org.jboss.qa.hornetq.apps.clients.version=<CLIENT_VERSION> | tee log
      
      Show
      git clone git://git.app.eng.bos.redhat.com/jbossqe/eap-tests-hornetq.git cd eap-tests-hornetq/scripts/ groovy -DEAP_ZIP_URL=<CURRENT_DIST_URL> PrepareServers7.groovy export WORKSPACE=$PWD export JBOSS_HOME_1=$WORKSPACE/server1/jboss-eap export JBOSS_HOME_2=$WORKSPACE/server2/jboss-eap export JBOSS_HOME_3=$WORKSPACE/server3/jboss-eap export JBOSS_HOME_4=$WORKSPACE/server4/jboss-eap cd ../jboss-hornetq-testsuite/ mvn clean test -Dtest=NetworkFailuresJMSBridgesTestCase#testShortNetworkFailureMixMessages1recAttempts -Deap7.org.jboss.qa.hornetq.apps.clients.version=<CLIENT_VERSION> | tee log

      Description

      Scenario
      Node A and B are started. JMS bridge with once and only once delivery and 1 reconnect attempt is deployed on node A. Producer starts sending mix of normal and large messages to InQueue on node A. Jms bridge resends messages from A's InQueue to B's OutQueue. During this time short network failure sequence (network goes down and then up) is executed twice. Receiver receives messages from OutQueue(also from node A). After that, network stays disconnected. Another receiver receives remaining messages from A's InQueue.

      Jms Bridge
      <jms-bridge name="myBridge" module="org.apache.activemq.artemis" quality-of-service="ONCE_AND_ONLY_ONCE" failure-retry-interval="1000" max-retries="1" max-batch-size="10" max-batch-time="100" add-messageID-in-header="true">
                      <source connection-factory="java:/ConnectionFactory" destination="jms/queue/InQueue"/>
                      <target connection-factory="jms/BridgeConnectionFactory" destination="jms/queue/OutQueue">
                          <target-context>
                              <property name="java.naming.factory.initial" value="org.jboss.naming.remote.client.InitialContextFactory"/>
                              <property name="java.naming.provider.url" value="http-remoting://127.0.0.1:9080"/>
                          </target-context>
                      </target>
      </jms-bridge>
      

      Issue

      • node A's InQueue and node B's OutQueue is empty
      • There are no prepared transactions on node A
      • some messages are missing after test (multiply of 10, which is number of messages in one transaction)
      • this scenario fails intermittently

      Issue was hit with Artemis 2.5.0 with https://github.com/jmesnil/wildfly/tree/WFLY-9407_upgrade_artemis_2.4.0_with_prefix (commit 51dd8102f103ccb0470a3cfc8713d3f9bdb1b65d)

      Logs are attached.

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  martyn-taylor Martyn Taylor
                  Reporter:
                  mstyk Martin Styk
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  5 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: