Hi,

I'm having one big problem, which I don't know how to handle.

I switched to new servicemix 3.2.2 (from 3.0)  and have replaced old
route.xml with new drl file. The drools' JbiHelper doesn't support "forward"
function any more. so I just replaced it with the "route" method.

So here is the case: component "A", routes message to component "Log". 

A----->DroolsRouter---->Log

The message is very simple, it only has "Stress test message n" test set as
property. It also has 
"<componentName>" + name + "</componentName>" set as content.

So, what I'm doing is that I route 1000 messages from A to Log with 100ms
sleep between each send.

Around 700th message I'm staring to get exceptions:

Stress test Message 718
Exception in thread "pool-flow.seda.DroolsComponent-thread-4"
java.lang.OutOfMemoryError: Java heap space
Stress test Message 719
Stress test Message 720

Here is my drl snippet:


rule "Logging Message"
        when
                me : Exchange( status == Exchange.ACTIVE, in != null )
                eval(me.getIn().getProperty(MessageConstants.LOG_MESSAGE) != 
null)              
                
        then
                jbi.route("service:http://stasim2//Log";);
end

I managed to get stacktrace of the exception once, see below. Looking to it,
it looks like there is some memory issue when parsing XML content???

Can anybody give me an idea how to fix this?



-------------------------------START---------------------------------------------
Exception in thread "pool-flow.seda.DroolsComponent-thread-3"
java.lang.OutOfMemoryError: Java heap space
 at org.apache.xerces.dom.DeferredDocumentImpl.createChunk(Unknown Source)
 at org.apache.xerces.dom.DeferredDocumentImpl.ensureCapacity(Unknown
Source)
 at org.apache.xerces.dom.DeferredDocumentImpl.createNode(Unknown Source)
 at
org.apache.xerces.dom.DeferredDocumentImpl.createDeferredDocument(Unknown
Source)
 at org.apache.xerces.parsers.AbstractDOMParser.startDocument(Unknown
Source)
 at org.apache.xerces.impl.dtd.XMLDTDValidator.startDocument(Unknown Source)
 at org.apache.xerces.impl.XMLDocumentScannerImpl.startEntity(Unknown
Source)
 at org.apache.xerces.impl.XMLVersionDetector.startDocumentParsing(Unknown
Source)
 at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
 at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
 at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
 at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
 at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
 at
org.apache.servicemix.jbi.jaxp.SourceTransformer.toDOMSourceFromStream(SourceTransformer.java:262)
 at
org.apache.servicemix.jbi.jaxp.SourceTransformer.toDOMSource(SourceTransformer.java:175)
 at
org.apache.servicemix.jbi.jaxp.SourceTransformer.toDOMNode(SourceTransformer.java:311)
 at
org.apache.servicemix.jbi.messaging.MessageExchangeImpl.display(MessageExchangeImpl.java:767)
 at
org.apache.servicemix.jbi.messaging.MessageExchangeImpl.toString(MessageExchangeImpl.java:743)
 at java.lang.String.valueOf(Unknown Source)
 at java.lang.StringBuilder.append(Unknown Source)
 at
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:136)
 at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
 at java.lang.Thread.run(Unknown Source)
-------------------------------END---------------------------------------------

-- 
View this message in context: 
http://www.nabble.com/java.lang.OutOfMemoryError%3A-Java-heap-space-tp19604576p19604576.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to