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

Openwire unable to receive larger message (10MB), but not "large"

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Not a Bug
    • Icon: Major Major
    • None
    • AMQ 7.1.1.GA, AMQ 7.2.0.GA
    • openwire-protocol
    • Documentation (Ref Guide, User Guide, etc.), Release Notes, User Experience
    • Hide
      Given that the broker isn't supporting chunked large messages for both AMQP and OpenWire JMS clients, while using JMS consumer receive with timeout API is important to size properly the timeout according to the network bandwidth available betweeen clients and broker and the speed of the disk of the running broker, otherwise the timed receive won't be able to get the sent message in time.
      Show
      Given that the broker isn't supporting chunked large messages for both AMQP and OpenWire JMS clients, while using JMS consumer receive with timeout API is important to size properly the timeout according to the network bandwidth available betweeen clients and broker and the speed of the disk of the running broker, otherwise the timed receive won't be able to get the sent message in time.
    • Hide

      Use longer consumer.receive() call instead of receive(200).

      Show
      Use longer consumer.receive() call instead of receive(200).
    • AMQ Broker 1836

      Openwire receiver client can't receive larger message (not large!) from 7.2.0 broker.
      I can send & receive the very same message (content of 10MB) using 7.1.1 broker in ~50% cases.

      Note: This message is not considered to be "AMQ_LARGE", it should be transferred as any other normal message.
      There is no support for large messages in Openwire - see ENTMQBR-483 for details.

      Create queue

      java  -jar /var/dtests/node_data/clients/amqx.jar  queue --host <broker>:1099 --username admin --password admin --broker-name amq --action add --name bigqueue
      

      Create larger file (not large) (~10MB)

      $ xxd -l 5000000 -p /dev/urandom > /tmp/big_file2
      $ ll -h /tmp/big_file2
      -rw-r--r--. 1 root root 9.7M Jun 18 12:53 /tmp/big_file2
      

      Send 10 messages

      java  -jar /var/dtests/node_data/clients/aoc7.jar sender  --log-msgs dict --broker tcp://<broker>:61616 --conn-username admin --conn-password admin --address bigqueue --count 10 --msg-content-from-file  /tmp/big_file2
      

      Receive messages

      # java -Xms2G -Xmx6G  -jar /var/dtests/node_data/clients/aoc7.jar receiver  --log-msgs dict --broker <broker>:61616 --conn-username admin --conn-password admin --address bigqueue --count 3 --log-lib debug
      13:00:05,788 DEBUG Connection=tcp://<broker>:61616?jms.userName=admin&jms.password=admin
      13:00:06,192 DEBUG Sending: WireFormatInfo { version=12, properties={StackTraceEnabled=true, PlatformDetails=Java, CacheEnabled=true, Host=<broker>, TcpNoDelayEnabled=true, SizePrefixDisabled=false, CacheSize=1024, ProviderName=ActiveMQ, TightEncodingEnabled=true, MaxFrameSize=9223372036854775807, MaxInactivityDuration=30000, MaxInactivityDurationInitalDelay=10000, ProviderVersion=null}, magic=[A,c,t,i,v,e,M,Q]}
      13:00:06,207 DEBUG Using min of local: WireFormatInfo { version=12, properties={StackTraceEnabled=true, PlatformDetails=Java, CacheEnabled=true, Host=<broker>, TcpNoDelayEnabled=true, SizePrefixDisabled=false, CacheSize=1024, ProviderName=ActiveMQ, TightEncodingEnabled=true, MaxFrameSize=9223372036854775807, MaxInactivityDuration=30000, MaxInactivityDurationInitalDelay=10000, ProviderVersion=null}, magic=[A,c,t,i,v,e,M,Q]} and remote: WireFormatInfo { version=10, properties={TcpNoDelayEnabled=true, SizePrefixDisabled=false, CacheSize=1024, StackTraceEnabled=true, CacheEnabled=false, TightEncodingEnabled=true, MaxFrameSize=9223372036854775807, MaxInactivityDuration=30000, MaxInactivityDurationInitalDelay=10000}, magic=[A,c,t,i,v,e,M,Q]}
      13:00:06,209 DEBUG Received WireFormat: WireFormatInfo { version=10, properties={TcpNoDelayEnabled=true, SizePrefixDisabled=false, CacheSize=1024, StackTraceEnabled=true, CacheEnabled=false, TightEncodingEnabled=true, MaxFrameSize=9223372036854775807, MaxInactivityDuration=30000, MaxInactivityDurationInitalDelay=10000}, magic=[A,c,t,i,v,e,M,Q]}
      13:00:06,209 DEBUG tcp:///<broker>:61616@35102 before negotiation: OpenWireFormat{version=12, cacheEnabled=false, stackTraceEnabled=false, tightEncodingEnabled=false, sizePrefixDisabled=false, maxFrameSize=9223372036854775807}
      13:00:06,241 DEBUG tcp:///<broker>:61616@35102 after negotiation: OpenWireFormat{version=10, cacheEnabled=false, stackTraceEnabled=true, tightEncodingEnabled=true, sizePrefixDisabled=false, maxFrameSize=9223372036854775807}
      13:00:07,027 DEBUG org.apache.activemq.ActiveMQConnection$3@6309f1a1 no dispatcher for MessageDispatch {commandId = 0, responseRequired = false, consumerId = ID:dhcp-145-223.lab.eng.brq.redhat.com-45891-1529319606065-1:1:1:1, destination = queue://bigqueue, message = ActiveMQTextMessage {commandId = 5, responseRequired = false, messageId = ID:dhcp-145-223.lab.eng.brq.redhat.com-33626-1529319501986-1:1:1:1:1, originalDestination = null, originalTransactionId = null, producerId = ID:dhcp-145-223.lab.eng.brq.redhat.com-33626-1529319501986-1:1:1:1, destination = queue://bigqueue, transactionId = null, expiration = 0, timestamp = 1529319503265, arrival = 0, brokerInTime = 1529319503431, brokerOutTime = 1529319606592, correlationId = null, replyTo = null, persistent = true, type = null, priority = 4, groupID = null, groupSequence = 0, targetConsumerId = null, compressed = false, userID = null, content = org.apache.activemq.util.ByteSequence@7968c23f, marshalledProperties = org.apache.activemq.util.ByteSequence@7dc6343a, dataStructure = null, redeliveryCounter = 0, size = 0, properties = {__AMQ_CID=ID:dhcp-145-223.lab.eng.brq.redhat.com-33626-1529319501986-0:1}, readOnlyProperties = false, readOnlyBody = false, droppable = false, jmsXGroupFirstForConsumer = false, text = 7cbcfc44f951e4f6683828788b36072f469bd75e7e7f5...caa6a728240
      }, redeliveryCounter = 0} in {}
      13:00:07,107 DEBUG org.apache.activemq.ActiveMQConnection$3@1493ab83 no dispatcher for MessageDispatch {commandId = 0, responseRequired = false, consumerId = ID:dhcp-145-223.lab.eng.brq.redhat.com-45891-1529319606065-1:1:1:1, destination = queue://bigqueue, message = ActiveMQTextMessage {commandId = 6, responseRequired = false, messageId = ID:dhcp-145-223.lab.eng.brq.redhat.com-33626-1529319501986-1:1:1:1:2, originalDestination = null, originalTransactionId = null, producerId = ID:dhcp-145-223.lab.eng.brq.redhat.com-33626-1529319501986-1:1:1:1, destination = queue://bigqueue, transactionId = null, expiration = 0, timestamp = 1529319505606, arrival = 0, brokerInTime = 1529319505746, brokerOutTime = 1529319606823, correlationId = null, replyTo = null, persistent = true, type = null, priority = 4, groupID = null, groupSequence = 0, targetConsumerId = null, compressed = false, userID = null, content = org.apache.activemq.util.ByteSequence@58b82acf, marshalledProperties = org.apache.activemq.util.ByteSequence@22a9e39e, dataStructure = null, redeliveryCounter = 0, size = 0, properties = {__AMQ_CID=ID:dhcp-145-223.lab.eng.brq.redhat.com-33626-1529319501986-0:1}, readOnlyProperties = false, readOnlyBody = false, droppable = false, jmsXGroupFirstForConsumer = false, text = 7cbcfc44f951e4f6683828788b36072f469bd75e7e7f5...caa6a728240
      }, redeliveryCounter = 0} in {}
      13:00:07,108 DEBUG Received unexpected response: {Response {commandId = 0, responseRequired = false, correlationId = 7}}for command id: 7
      13:00:07,111 DEBUG Shutdown of ExecutorService: java.util.concurrent.ThreadPoolExecutor@4d49af10[Terminated, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 0] is shutdown: true and terminated: true took: 0.000 seconds.
      13:00:07,111 DEBUG Shutdown of ExecutorService: java.util.concurrent.ThreadPoolExecutor@279ad2e3[Terminated, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 0] is shutdown: true and terminated: true took: 0.000 seconds.
      13:00:07,112 DEBUG Stopping transport tcp:///<broker>:61616@35102
      13:00:07,113 DEBUG Initialized TaskRunnerFactory[ActiveMQ Task] using ExecutorService: java.util.concurrent.ThreadPoolExecutor@731f8236[Running, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 0]
      13:00:07,120 DEBUG Closed socket Socket[addr=/<broker>,port=61616,localport=35102]
      13:00:07,121 DEBUG Forcing shutdown of ExecutorService: java.util.concurrent.ThreadPoolExecutor@731f8236[Running, pool size = 1, active threads = 0, queued tasks = 0, completed tasks = 1]
      

              fnigro Francesco Nigro
              mtoth@redhat.com Michal Toth
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Estimated:
                  Original Estimate - 2 days
                  2d
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 2 days
                  2d