Uploaded image for project: 'Qpid'
  1. Qpid
  2. QPID-7963

[AMQP1.0] Sending a large message to a client uses excessive heap memory

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: qpid-java-broker-7.0.0
    • Fix Version/s: qpid-java-broker-7.0.0
    • Component/s: Broker-J
    • Labels:
      None

      Description

      Examining heap usage whilst running a large transient message test, I see that large AMQP 1.0 messages manifest fully on the heap whilst they traverse the Broker. Neither AMQP 0-9 not AMQP 0-10 do this.

      See attached jvisualvm screenshot. The spike at 3.17PM is a 300MB message being produced/consumed. Later in the same test (same graph) a 750MB message went over AMQP 0-9 and 0-10 messages with no discernible heap impact.

      Command line was:

      (export MAVEN_OPTS='-Xmx3g'; mvn package exec:java -f pom.xml -Dstresstest=qpid-jms-client -Dexec.args='messagecount=1 size=300000000 random=false jndiProperties=stress-test-client-qpid-jms-client.properties')

      Java Broker running with out of the box memory settings with -Dqpid.max_message_size=2000000000 -Dqpid.port.max_message_size=2000000000

        Attachments

        1. QPID-7963.diff
          2 kB
          Robert Godfrey
        2. AMQP1.0transientmessagestraverseheap.png
          55 kB
          Keith Wall

          Activity

            People

            • Assignee:
              orudyy Alex Rudyy
              Reporter:
              kwall Keith Wall
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: