I was noticing today that if I run servicemix for a while (without sending any requests to it), it would eventually run out of heap space. I hadn't had that problem in a long time and after looking at jconsole running with different activemq clustering configurations, it looks like activemq may be leaking memory if you use this network connector configuration, when neither of the hosts specified have been started yet:
<amq:networkConnector uri="static://(tcp://host1:61616,tcp://host2:61616)"/> It seems like it takes around 30 minutes or so... basically, it will just keep churning through memory (probably 1 mb/sec) and then that memory will get garbage collected. After a while, not all the memory gets garbage collected, even if you tell it to garbage collect in jconsole. If I change back to multicast, it appears as though the problem goes away and it chews through memory slower (I'm not sure if the issue would still happen or not). Basically, we don't have multicast enabled on the network where I test out our software, so I started using the network connector with the hosts specified. Would I just be better off using an external activemq instance? If so, what's the best way to make your jms SU's that are deployed all use the same activemq instance? I know you configure it in servicemix.conf (I think is the file), but the jms su's get configured separately for what activemq server they should connect to. Has anyone ran across this issue or have a good way of handling it? Thanks for any help! Ryan
