Uploaded image for project: 'AMQ Broker'
  1. AMQ Broker
  2. ENTMQBR-1616

Regression in JMS bridge with network failures tests

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Blocker Blocker
    • AMQ 7.2.1.GA
    • None
    • None
    • 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

      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.

              mtaylor1@redhat.com Martyn Taylor (Inactive)
              mtoth@redhat.com Michal Toth
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:

                  Estimated:
                  Original Estimate - 2 days
                  2d
                  Remaining:
                  Remaining Estimate - 2 days
                  2d
                  Logged:
                  Time Spent - Not Specified
                  Not Specified