Lorenz Quack created QPID-6788:
----------------------------------

             Summary: NonBlockingConnection can occupy large amounts of direct 
memory causing the broker to go OutOfMemory
                 Key: QPID-6788
                 URL: https://issues.apache.org/jira/browse/QPID-6788
             Project: Qpid
          Issue Type: Bug
          Components: Java Broker
    Affects Versions: qpid-java-6.0
            Reporter: Lorenz Quack


Messages get passed to {{NonBlockingConnection}} in the {{send()}} method which 
holds them in the private {{_buffers}} field. The {{doWrite()}} method consumes 
the messages and disposes them from the IOThread. However, there is no limit on 
how many messages/buffer can be in the {{_buffers}} variable.
In one test there were about 2000 {{QpidByteBuffers}} in {{_buffers}} 
accounting for approximately 500 MBytes direct memory.
This happens can cause the Broker to go OutOfMemory especially when the client 
is useing prefetch.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to