ServiceMix JMS MultiplexingConsumerProcessor memory bloat due to hung/delayed exchanges ---------------------------------------------------------------------------------------
Key: SM-1234 URL: https://issues.apache.org/activemq/browse/SM-1234 Project: ServiceMix Issue Type: Bug Components: servicemix-jms Affects Versions: 3.2.1 Reporter: Trevor Pounds Fix For: 3.3 There is a pendingMessages data structure which holds onto JMS Message object references until the exchange is returned. If the asynchronous exchanges are hung or delayed the pendingMessages can grow quite large resulting in heap allocation errors if the messages are large. A heap dump on one of our data sets showed > 700MB of messages being referenced due to this data structure. As far as I can tell the JMS Message reference pulled from the map is only used to retrieve certain JMS Message properties (getJMSReplyTo, getJMSMessageID, getJMSCorrelationID). Possible fixes: 1) On InOnly exchanges do not store the Message since the method exits without using any of the message attributes 2) Store only the attributes needed for exchanges needing a reply -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.