Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-8747

address-full-policy="DROP" is not respected with non-persistent messaging

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 7.1.0.DR18
    • 7.1.0.DR11
    • ActiveMQ
    • None
    • Hide

      Automatic reproducer for EAP 7.1.0.DR11 (Artemis 1.5.1-jbossorg001):

      git clone git://git.app.eng.bos.redhat.com/jbossqe/eap-tests-hornetq.git
      cd eap-tests-hornetq/scripts/
      git checkout master
      
      groovy -DEAP_VERSION=7.1.0.DR11 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=ZeroPersistenceTestCase#testZeroPersistenceNormalMessagesDrop  -DfailIfNoTests=false -Deap=7x  | tee log
      

      Manual steps to reproduce:
      1. Create an A-MQ broker and set:

      <address-setting ... address-full-policy="DROP" max-size-bytes="1000000" .../>
      

      along with

      <server name="default" persistence-enabled="false">
      

      Using any test client, post messages until the total payload is greater than 1Mb. Note that all the messages are accepted.

      2. Enable persistence, and repeat test. Note that messages are ignored (without error) once the total sent is greater than ~1Mb, as expected.

      3. Disable persistence, and set

      address-full-policy="DROP"
      

      Note that clients are blocked, as expected, once the total payload gets to 1Mb. It seems that it is only the combination of DROP and non-persistent messaging that does not work.

      Show
      Automatic reproducer for EAP 7.1.0.DR11 (Artemis 1.5.1-jbossorg001): git clone git: //git.app.eng.bos.redhat.com/jbossqe/eap-tests-hornetq.git cd eap-tests-hornetq/scripts/ git checkout master groovy -DEAP_VERSION=7.1.0.DR11 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=ZeroPersistenceTestCase#testZeroPersistenceNormalMessagesDrop -DfailIfNoTests= false -Deap=7x | tee log Manual steps to reproduce: 1. Create an A-MQ broker and set: <address-setting ... address-full-policy= "DROP" max-size-bytes= "1000000" .../> along with <server name= " default " persistence-enabled= " false " > Using any test client, post messages until the total payload is greater than 1Mb. Note that all the messages are accepted. 2. Enable persistence, and repeat test. Note that messages are ignored (without error) once the total sent is greater than ~1Mb, as expected. 3. Disable persistence, and set address-full-policy= "DROP" Note that clients are blocked, as expected, once the total payload gets to 1Mb. It seems that it is only the combination of DROP and non-persistent messaging that does not work.

    Description

      When setting a maximum message capacity on a destination, with address-full-policy=DROP, the policy is not respected when persistence is disabled. This might be an unavoidable consequence of disabling persistence, but the BLOCK policy is respected.

      Attachments

        Issue Links

          Activity

            People

              dtikhomi@redhat.com Dmitrii Tikhomirov
              mnovak1@redhat.com Miroslav Novak
              Miroslav Novak Miroslav Novak
              Miroslav Novak Miroslav Novak
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: