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

Details

    • Release Notes, Compatibility/Configuration, User Experience

    Description

      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...

      Attachments

        Issue Links

          Activity

            People

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

              Dates

                Created:
                Updated:
                Resolved: