[ https://issues.apache.org/jira/browse/CXF-5754?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15925973#comment-15925973 ]
Dan Salt edited comment on CXF-5754 at 3/15/17 11:56 AM: --------------------------------------------------------- Hi Christian, I can confirm that using a simple unit test (that aggressively sends request/reply messages to a JMS destination with no consumer, with a short timeout), against an unfixed 3.0.11 JMS transport runs out of memory on a 100mb VM in just under 5 minutes. !unfixed-test01.png|thumbnail! But a modified 3.0.12 (using your fixed code) against the same test is happily running over 20 minutes later - no signs of a leak. !fixed-test01.png|thumbnail! This matches what we saw with our initial patch - so I think we call your fix a success :) Cheers, Dan was (Author: dansalt): Hi Christian, I can confirm that using a simple unit test (that aggressively sends request/reply messages to a JMS destination with no consumer, with a short timeout), against an unfixed 3.0.11 JMS transport runs out of memory on a 100mb VM in just under 5 minutes. !unfixed-test01.png! But a modified 3.0.12 (using your fixed code) against the same test is happily running over 20 minutes later - no signs of a leak. !fixed-test01.png! This matches what we saw with our initial patch - so I think we call your fix a success :) Cheers, Dan > JMSConduit - temporary queue not beeing closed if relpyMessage is null > (timeout) > -------------------------------------------------------------------------------- > > Key: CXF-5754 > URL: https://issues.apache.org/jira/browse/CXF-5754 > Project: CXF > Issue Type: Bug > Components: WS-* Components > Affects Versions: 2.7.11 > Reporter: Philipp Hahn > Assignee: Christian Schneider > Fix For: 3.2.0, 3.0.13, 3.1.11 > > Attachments: eclipse-mem-analyzer.png, fixed-test01.png, > memory-leak-due-to-timeouts-4hrs.png, unfixed-test01.png > > > Our implementation: > CXF 2.7.11 > JMS Queue on TIBCO > We have the problem, that if a timeout is raised the temporary queue is not > been deleted. > After code review of the JmsConduit class we have seen, that in case of a > timeout, cxf is only raises only an RuntimeException (JmsConduit line 256) > {code} > javax.jms.Message replyMessage = > jmsTemplate.receiveSelected(replyToDestination, messageSelector); > if (replyMessage == null) { > throw new RuntimeException("Timeout receiving message > with correlationId " + correlationId); > } else { > doReplyMessage(exchange, replyMessage); > } > {code} > Is this the problem why the temporary queue is not been closed in case of a > timeout? Is there an solution for this problem? > Thanks! -- This message was sent by Atlassian JIRA (v6.3.15#6346)