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

Lost messages in cluster with server crashes

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Blocker Blocker
    • A-MQ 7.0.0.CR1
    • A-MQ 7.0.0.ER16
    • None
    • Hide

      Steps to reproduce the issue - not 100% reproducer. I can hit in 30% of runs in messaging lab, it seems that it can be hit better on fast discs:

      git clone git://git.app.eng.bos.redhat.com/jbossqe/eap-tests-hornetq.git
      cd eap-tests-hornetq/scripts/
      
      groovy -DEAP_VERSION=7.1.0.DR15 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=ClusterTestCase#clusterTestWithKills -DfailIfNoTests=false -Deap=7x | tee log
      
      Show
      Steps to reproduce the issue - not 100% reproducer. I can hit in 30% of runs in messaging lab, it seems that it can be hit better on fast discs: git clone git: //git.app.eng.bos.redhat.com/jbossqe/eap-tests-hornetq.git cd eap-tests-hornetq/scripts/ groovy -DEAP_VERSION=7.1.0.DR15 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=ClusterTestCase#clusterTestWithKills -DfailIfNoTests= false -Deap=7x | tee log

      Customer impact: If server in cluster crashes then some messages might get lost.

      Test scenario:

      • Start two EAP 7.1 servers in (Artemis) cluster
      • Send 10 000 messages to queue InQueue to node-1. Wait until all messages are sent.
        • Set _AMQ_DUP_ID to generated UUID for each message
      • Deploy MDB to node-2 which consumes messages from InQueue, creates new message and sends it to OutQueue (in XA transaction)
        • Set inMessageId property of newly created message to message ID of message received from InQueue
        • Also _AMQ_DUP_ID of newly created message is set to the same value as for message received from InQueue so they're the same
      • Repeat following sequence 5 times
        • Kill node-2 and start it after 20 seconds
        • Kill node-1 and start it after 20 seconds
      • Receive all messages from OutQueue from node -2 and compare message ID of sent messages with inMessageId of received messages to find lost and duplicated messages.

      Pass Criteria: Number of messages sent to InQueue will be the same as number of messages received from OutQueue. There are no lost or duplicated messages.

      Actual Result:
      Sometimes happens that some messages are lost.

      Expected Result:
      No messages will be lost.

              csuconic@redhat.com Clebert Suconic
              mtaylor1@redhat.com Martyn Taylor (Inactive)
              Miroslav Novak Miroslav Novak
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: