Hello,
During a test of a deployment, ServiceMix returned an OutOfMemoryError.
The deployment uses a custom made Binding Component, and my first
assumption would be that this Binding Component is flooding the memory;
there is some pretty load-heavy processing going on in there.
Yet, when viewing the stack trace (added further on), I did notice that
it is one of the Seda Queues that logs the exception, and it references
to a failed InOut message send from the custom BC to a LW XSLT
transformer.
Now I wonder in what wat I can get certainty concerning which
component/Queue is causing these problems. Do the Binding Components in
ServiceMix use the same Java heap space as the Seda queues (or other
parts of smx for that matter)? If so, a flooding of the memory from a
binding component can result in any arbitrary part of smx to run into
the memory error first, as the available memory of all components is
equally reduced.
Cheers,
Rob de Jong
The stack trace I'm given is as follows:
ERROR - SedaQueue -
org.apache.servicemix.jbi.nmr.flow.seda
[EMAIL PROTECTED] got error processing InOut[
id: ID:urbi-22-4265-1183321973531-7:48464
status: Active
role: provider
service: {http://www.vrom.nl/wkpb/wsdl/wkpb0102.wsdl}AKR2WKPB
endpoint: AKR2WKPB
in: <?xml version="1.0"
encoding="UTF-8"?><voegPerceelToe><PERCEEL><ID_OBJECT>
HLM03AD07026G0000</ID_OBJECT><KADASTRALE_GEMEENTECODE_ALG>HLM03</KADASTR
ALE_GEME
ENTECODE_ALG><OBJECTINDEXLETTER_ALG>G</OBJECTINDEXLETTER_ALG><SECTIE_ALG
>AD</SEC
TIE_ALG><PERCEELNUMMER_ALG>07026</PERCEELNUMMER_ALG><OBJECTINDEXNUMMER_A
LG>0000<
/OBJECTINDEXNUMMER_ALG><ID_OBJECT>HLM03AD07026G0000</ID_OBJECT><OBJECTIN
DEXLETTE
R_ALG>G</OBJECTINDEXLETTER_ALG><CBS_CODE>0512</CBS_CODE><SEQNR>31</SEQNR
></PERCE
EL><MSG_ZENDER>AKR</MSG_ZENDER><MSG_ONTVANGER>Obterra</MSG_ONTVANGER><MS
G_REFERE
NTIENUMMER>28937</MSG_REFERENTIENUMMER><MSG_TIJDSTIP>20070702043350578</
MSG_TIJD
STIP></voegPerceelToe>
]
java.lang.OutOfMemoryError: Java heap space
at org.apache.xpath.VariableStack.reset(VariableStack.java:137)
at
org.apache.xalan.transformer.TransformerImpl.reset(TransformerImpl.ja
va:507)
at
org.apache.xalan.transformer.TransformerImpl.transformNode(Transforme
rImpl.java:1436)
at
org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp
l.java:709)
at
org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp
l.java:1284)
at
org.apache.xalan.transformer.TransformerImpl.transform(TransformerImp
l.java:1262)
at
org.apache.servicemix.components.xslt.XsltComponent.transformContent(
XsltComponent.java:175)
at
org.apache.servicemix.components.xslt.XsltComponent.transform(XsltCom
ponent.java:154)
at
org.apache.servicemix.components.util.TransformComponentSupport.onMes
sageExchange(TransformComponentSupport.java:66)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBoun
d(DeliveryChannelImpl.java:593)
at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlo
w.java:174)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.j
ava:176)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.jav
a:134)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Wor
ker.runTask(ThreadPoolExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Wor
ker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:619)