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

Address full policies do not work properly (AMQP, Openwire, Core vs FAIL, BLOCK, DROP)

XMLWordPrintable

    • Release Notes, Compatibility/Configuration, User Experience

      Address full policies do not work for DROP, BLOCK, FAIL (most probably PAGE works, as it is a default one). I have tried Core, AMQP and Openwire protocols.

      0) Set address-full-policy to DROP/FAIL/BLOCK, when max-size-bytes for address is hit (1mB) 1048576
      1) Create new queue (with applying limits to it)
      2) Send 20 messages with 100kB payload (1 msg ~120kb)
      3) Receive as many messages as possible (receive 11 is OK). 11 msgs are received. OK
      4) Send 20 messages with 300kB payload.
      5) Receive as many messages as possible (receive 4 is OK). 20 msgs are received. BUG
      6) Repeat 2+3 -> limits apply.
      7) Send 1.1mB message -> limits do not apply.

      <address-settings>
               <!-- if you define auto-create on certain queues, management has to be auto-create -->
               <address-setting match="activemq.management#">
                  <dead-letter-address>DLQ</dead-letter-address>
                  <expiry-address>ExpiryQueue</expiry-address>
                  <redelivery-delay>0</redelivery-delay>
                  <!-- with -1 only the global-max-size is in use for limiting -->
                  <max-size-bytes>-1</max-size-bytes>
                  <message-counter-history-day-limit>10</message-counter-history-day-limit>
                  <address-full-policy>PAGE</address-full-policy>
                  <auto-create-queues>true</auto-create-queues>
                  <auto-create-addresses>true</auto-create-addresses>
                  <auto-create-jms-queues>true</auto-create-jms-queues>
                  <auto-create-jms-topics>true</auto-create-jms-topics>
               </address-setting>
               <!--default for catch all-->
               <address-setting match="#">
                  <dead-letter-address>DLQ</dead-letter-address>
                  <expiry-address>ExpiryQueue</expiry-address>
                  <redelivery-delay>0</redelivery-delay>
                  <!-- with -1 only the global-max-size is in use for limiting -->
                  <max-size-bytes>1048576</max-size-bytes>
                  <message-counter-history-day-limit>10</message-counter-history-day-limit>
                  <address-full-policy>DROP</address-full-policy>
                  <auto-create-queues>true</auto-create-queues>
                  <auto-create-addresses>true</auto-create-addresses>
                  <auto-create-jms-queues>true</auto-create-jms-queues>
                  <auto-create-jms-topics>true</auto-create-jms-topics>
               </address-setting>
            </address-settings>
      
      $ ll -hS /tmp/
      total 2.5M
      -rw-r--r--. 1 root root 1.1M Feb 19 11:06 1.1mB
      -rw-r--r--. 1 root root 512K Feb 19 10:49 512kb
      -rw-r--r--. 1 root root 400K Feb 19 11:42 400kB
      -rw-r--r--. 1 root root 300K Feb 19 11:10 300kB
      -rw-r--r--. 1 root root 100K Feb 19 10:39 100kb
      

      Openwire Example (seems like OW has big headers, only 4 messages fit in.. 100kB payload+150kB headers?)

      $ java  -jar /var/dtests/node_data/clients/amqx.jar  queue --host 10.37.145.185:1099 --username admin --password admin --action add --name lalaQ_openwire
            Queue 'lalaQ_openwire' created
      
      $ java  -jar /var/dtests/node_data/clients/aoc7.jar sender --log-msgs dict --broker 10.37.145.185:61616  --conn-username admin --conn-password admin --address lalaQ_openwire --count 20 --msg-content-from-file /tmp/100kB
      <20 msgs out>
      
      $ java  -jar /var/dtests/node_data/clients/aoc7.jar receiver --log-msgs dict --broker 10.37.145.185:61616 --conn-username admin --conn-password admin --address lalaQ_openwire --count 0
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-44066-1519038502102-1:1:1:1:1', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038502401, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-44066-1519038502102-1:1:1:1:2', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038502470, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-44066-1519038502102-1:1:1:1:3', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038502491, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-44066-1519038502102-1:1:1:1:4', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038502514, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      

      Limits apply well. Let's send a bigger message now. 20x 300kB

      [2,root@r7x1_mtoth clients]$ java  -jar /var/dtests/node_data/clients/aoc7.jar sender --log-msgs dict --broker 10.37.145.185:61616  --conn-username admin --conn-password admin --address lalaQ_openwire --count 20 --msg-content-from-file /tmp/300kB 
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:1', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639392, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:2', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639504, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:3', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639577, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:4', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639622, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:5', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639661, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:6', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639714, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:7', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639752, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:8', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639796, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:9', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639838, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:10', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639877, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:11', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639916, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:12', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639970, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:13', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038640030, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:14', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038640077, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:15', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038640138, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:16', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038640188, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:17', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038640224, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:18', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038640290, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:19', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038640364, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:20', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038640406, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      
      
      [0,root@r7x1_mtoth ~]$ java  -jar /var/dtests/node_data/clients/aoc7.jar receiver --log-msgs dict --broker 10.37.145.185:61616 --conn-username admin --conn-password admin --address lalaQ_openwire --count 0
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:1', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639392, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:2', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639504, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:3', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639577, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:4', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639622, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:5', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639661, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:6', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639714, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:7', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639752, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:8', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639796, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:9', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639838, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:10', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639877, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:11', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639916, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:12', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038639970, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:13', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038640030, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:14', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038640077, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:15', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038640138, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:16', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038640188, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:17', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038640224, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:18', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038640290, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:19', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038640364, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-46212-1519038639087-1:1:1:1:20', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519038640406, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      

      BUG

      Send again 20x100kB message, 4 are received, the rest is dropped. OK
      If sent 5x 1.1mB message all were received by consumer. BUG

      Core client completely ignores DROP policy.

      $ java  -jar /var/dtests/node_data/clients/acce.jar sender --log-msgs dict --broker 10.37.145.185:61616  --conn-username admin --conn-password admin --address lalaQ_core --count 20 --msg-content-from-file /tmp/100kb --msg-content "#%d"
      {'durable': True, 'priority': 4, 'ttl': 0, 'first-acquirer': False, 'delivery-count': 0, 'redelivered': False, 'id': 'ID:1d19d619-1566-11e8-a1dc-5254008ddc59', 'user_id':None, 'address': 'lalaQ_core', 'subject': None, 'reply_to': None, 'correlation_id': None, 'content_type': None, 'content_encoding': None, 'absolute-expiry-time': 0, 'creation-time': 1519038895386, 'group-id': None, 'group-sequence': 0, 'reply-to-group-id': None, 'properties': {'JMSXDeliveryCount': '0'}, 'content': '#0', 'type': None}
      ...
      {'durable': True, 'priority': 4, 'ttl': 0, 'first-acquirer': False, 'delivery-count': 0, 'redelivered': False, 'id': 'ID:1d24366c-1566-11e8-a1dc-5254008ddc59', 'user_id':None, 'address': 'lalaQ_core', 'subject': None, 'reply_to': None, 'correlation_id': None, 'content_type': None, 'content_encoding': None, 'absolute-expiry-time': 0, 'creation-time': 1519038895456, 'group-id': None, 'group-sequence': 0, 'reply-to-group-id': None, 'properties': {'JMSXDeliveryCount': '0'}, 'content': '#19', 'type': None}
      
      
      Receiver
      $ java  -jar /var/dtests/node_data/clients/acce.jar receiver --log-msgs dict --broker 10.37.145.185:61616 --conn-username admin --conn-password admin --address lalaQ_core --count 0
      {'durable': True, 'priority': 4, 'ttl': 0, 'first-acquirer': False, 'delivery-count': 0, 'redelivered': False, 'id': 'ID:1d19d619-1566-11e8-a1dc-5254008ddc59', 'user_id':None, 'address': 'lalaQ_core', 'subject': None, 'reply_to': None, 'correlation_id': None, 'content_type': None, 'content_encoding': None, 'absolute-expiry-time': 0, 'creation-time': 1519038895386, 'group-id': None, 'group-sequence': 0, 'reply-to-group-id': None, 'properties': {'JMSXDeliveryCount': '1'}, 'content': '#0', 'type': None}
      .....
      {'durable': True, 'priority': 4, 'ttl': 0, 'first-acquirer': False, 'delivery-count': 0, 'redelivered': False, 'id': 'ID:1d23e84b-1566-11e8-a1dc-5254008ddc59', 'user_id':None, 'address': 'lalaQ_core', 'subject': None, 'reply_to': None, 'correlation_id': None, 'content_type': None, 'content_encoding': None, 'absolute-expiry-time': 0, 'creation-time': 1519038895454, 'group-id': None, 'group-sequence': 0, 'reply-to-group-id': None, 'properties': {'JMSXDeliveryCount': '1'}, 'content': '#18', 'type': None}
      {'durable': True, 'priority': 4, 'ttl': 0, 'first-acquirer': False, 'delivery-count': 0, 'redelivered': False, 'id': 'ID:1d24366c-1566-11e8-a1dc-5254008ddc59', 'user_id':None, 'address': 'lalaQ_core', 'subject': None, 'reply_to': None, 'correlation_id': None, 'content_type': None, 'content_encoding': None, 'absolute-expiry-time': 0, 'creation-time': 1519038895456, 'group-id': None, 'group-sequence': 0, 'reply-to-group-id': None, 'properties': {'JMSXDeliveryCount': '1'}, 'content': '#19', 'type': None}
      

      AMQP
      if message content is not empty, DROP policy applies. Otherwise DROP policy is only for fun...

      With empty message content 20x 100kB messages are sent, 11 is received - OK expected.
      With content specified 20x100kB messages are sent, 20 is received. BUG.

      DROP, BLOCK policy is not working as well.

      FAIL worked similarly (kicked in with 100kB messages, else not at all). Core ignores such policy

      javax.jms.JMSException: AMQ119102: Address "lalaQ_amqp" is full. [condition = failed]
      	at org.apache.qpid.jms.provider.amqp.AmqpSupport.convertToException(AmqpSupport.java:164)
      	at org.apache.qpid.jms.provider.amqp.AmqpSupport.convertToException(AmqpSupport.java:117)
      	at org.apache.qpid.jms.provider.amqp.AmqpFixedProducer.processDeliveryUpdates(AmqpFixedProducer.java:244)
      	at org.apache.qpid.jms.provider.amqp.AmqpProvider.processUpdates(AmqpProvider.java:927)
      	at org.apache.qpid.jms.provider.amqp.AmqpProvider.access$1800(AmqpProvider.java:101)
      	at org.apache.qpid.jms.provider.amqp.AmqpProvider$17.run(AmqpProvider.java:789)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
      	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at java.lang.Thread.run(Thread.java:745)
      

      It seems like these limits work only the first time. Then they are broken. Openwire + FAIL

      $ java  -jar /var/dtests/node_data/clients/aoc7.jar sender --log-msgs dict --broker 10.37.145.185:61616  --conn-username admin --conn-password admin --address lalaQ_openwire --count 20 --msg-content-from-file /tmp/100kb 
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-43168-1519039995177-1:1:1:1:1', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519039995556, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-43168-1519039995177-1:1:1:1:2', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519039995648, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-43168-1519039995177-1:1:1:1:3', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519039995669, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      {'redelivered': False, 'reply_to': None, 'id': 'dhcp-145-185.lab.eng.brq.redhat.com-43168-1519039995177-1:1:1:1:4', 'user_id':None, 'correlation_id': None, 'priority': 4, 'durable': True, 'ttl': 0, 'type': None, 'expiration': 0, 'timestamp': 1519039995694, 'address': 'queue://lalaQ_openwire', 'properties': {}, 'content': ''}
      12:33:15,752 ERROR Error while sending a message!
      javax.jms.ResourceAllocationException: Queue is full lalaQ_openwire
      	at org.apache.activemq.artemis.core.protocol.openwire.amq.AMQSession.send(AMQSession.java:405)
      	at org.apache.activemq.artemis.core.protocol.openwire.OpenWireConnection$CommandProcessor.processMessage(OpenWireConnection.java:1478)
      	at org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:768)
      	at org.apache.activemq.artemis.core.protocol.openwire.OpenWireConnection.bufferReceived(OpenWireConnection.java:277)
      	at org.apache.activemq.artemis.core.remoting.server.impl.RemotingServiceImpl$DelegatingBufferHandler.bufferReceived(RemotingServiceImpl.java:642)
      	at org.apache.activemq.artemis.core.remoting.impl.netty.ActiveMQChannelHandler.channelRead(ActiveMQChannelHandler.java:68)
      	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
      	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
      	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
      	at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310)
      	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284)
      	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
      	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
      	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
      	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1359)
      	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
      	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
      	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:935)
      	at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:797)
      	at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:404)
      	at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:304)
      	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858)
      	at java.lang.Thread.run(Thread.java:745)
      [1,root@r7x1_mtoth clients]$ 
      [1,root@r7x1_mtoth clients]$ 
      [1,root@r7x1_mtoth clients]$ 
      [1,root@r7x1_mtoth clients]$ java  -jar /var/dtests/node_data/clients/aoc7.jar sender --log-msgs dict --broker 10.37.145.185:61616  --conn-username admin --conn-password admin --address lalaQ_openwire --count 20 --msg-content-from-file /tmp/300kB 
      12:33:21,853 ERROR Error while sending a message!
      javax.jms.ResourceAllocationException: Queue is full lalaQ_openwire
      	at org.apache.activemq.artemis.core.protocol.openwire.amq.AMQSession.send(AMQSession.java:405)
      	at org.apache.activemq.artemis.core.protocol.openwire.OpenWireConnection$CommandProcessor.processMessage(OpenWireConnection.java:1478)
      	at org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:768)
      	at org.apache.activemq.artemis.core.protocol.openwire.OpenWireConnection.bufferReceived(OpenWireConnection.java:277)
      	at org.apache.activemq.artemis.core.remoting.server.impl.RemotingServiceImpl$DelegatingBufferHandler.bufferReceived(RemotingServiceImpl.java:642)
      	at org.apache.activemq.artemis.core.remoting.impl.netty.ActiveMQChannelHandler.channelRead(ActiveMQChannelHandler.java:68)
      	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
      	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
      	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
      	at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310)
      	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284)
      	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
      	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
      	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
      	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1359)
      	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
      	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
      	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:935)
      	at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:797)
      	at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:404)
      	at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:304)
      	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858)
      	at java.lang.Thread.run(Thread.java:745)
      

      CORRECT! Finally

      But let's read those messages and send there 300kB messages again
      <read all msgs from queue>
      Send 20x 300kB messages. I sent there 80 of such messages...

            rh-ee-ataylor Andy Taylor
            mtoth@redhat.com Michal Toth
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: