Hi Please post the heap memory which you are using for this testing, did you enable binary relay and formatters, you defentely could avoid such situations if use binary relay and formatters when processing large files.
cheers Dushan On Tue, Mar 12, 2013 at 11:39 PM, Lakmali Baminiwatta <[email protected]>wrote: > Hi all, > > When I was running a ESB proxy service which transforms a huge xml message > using smooks mediator, following exceptions were thrown. > > java.lang.OutOfMemoryError: GC overhead limit exceeded > at java.util.LinkedHashMap.init(LinkedHashMap.java:223) > at java.util.HashMap.<init>(HashMap.java:188) > at java.util.HashMap.<init>(HashMap.java:199) > at java.util.LinkedHashMap.<init>(LinkedHashMap.java:172) > at > org.apache.axiom.om.impl.llom.OMElementImpl.addAttribute(OMElementImpl.java:588) > at > org.apache.axiom.om.impl.llom.OMElementImpl.addAttribute(OMElementImpl.java:632) > at > org.apache.axiom.om.impl.builder.StAXBuilder.processAttributes(StAXBuilder.java:232) > at > org.apache.axiom.om.impl.builder.StAXOMBuilder.populateOMElement(StAXOMBuilder.java:432) > at > org.apache.axiom.om.impl.builder.StAXOMBuilder.createOMElement(StAXOMBuilder.java:461) > at > org.apache.axiom.om.impl.builder.StAXOMBuilder.createNextOMElement(StAXOMBuilder.java:318) > at > org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:249) > at > org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling(OMElementImpl.java:336) > at > org.apache.axiom.om.impl.traverse.OMChildrenIterator.getNextNode(OMChildrenIterator.java:36) > at > org.apache.axiom.om.impl.traverse.OMAbstractIterator.hasNext(OMAbstractIterator.java:58) > at > org.apache.axiom.om.impl.traverse.OMFilterIterator.hasNext(OMFilterIterator.java:54) > at > org.apache.axiom.om.impl.llom.OMElementImpl.getFirstChildWithName(OMElementImpl.java:273) > at > org.apache.synapse.transport.passthru.util.RelayUtils.buildMessage(RelayUtils.java:96) > at > org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:62) > at > org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:114) > at > org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:154) > at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) > at > org.apache.axis2.transport.base.AbstractTransportListener.handleIncomingMessage(AbstractTransportListener.java:328) > at > org.apache.synapse.transport.vfs.VFSTransportListener.processFile(VFSTransportListener.java:565) > at > org.apache.synapse.transport.vfs.VFSTransportListener.scanFileOrDirectory(VFSTransportListener.java:312) > at > org.apache.synapse.transport.vfs.VFSTransportListener.poll(VFSTransportListener.java:158) > at > org.apache.synapse.transport.vfs.VFSTransportListener.poll(VFSTransportListener.java:107) > at > org.apache.axis2.transport.base.AbstractPollingTransportListener$1$1.run(AbstractPollingTransportListener.java:67) > at > org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) > at java.lang.Thread.run(Thread.java:662) > > > Below given is my synapse sonfiguration and this worked in ESB 4.5.0. > > <definitions xmlns="http://ws.apache.org/ns/synapse"> > > <localEntry key="smooks-key" > src="file:repository/samples/resources/smooks/smooks-config-802.xml"/> > <proxy name="StockQuoteProxy" transports="vfs"> > <!--CHANGE--> > <parameter > name="transport.vfs.FileURI">file:///home/lakmali/dev/test/smooks/in</parameter> > <parameter > name="transport.vfs.ContentType">application/xml</parameter> > <parameter name="transport.vfs.FileNamePattern">.*\.xml</parameter> > <parameter name="transport.PollInterval">5</parameter> > <!--CHANGE--> > <parameter > name="transport.vfs.MoveAfterProcess">file:///home/lakmali/dev/test/smooks/original</parameter> > <!--CHANGE--> > <parameter > name="transport.vfs.MoveAfterFailure">file:///home/lakmali/dev/test/smooks/original</parameter> > <parameter name="transport.vfs.ActionAfterProcess">MOVE</parameter> > <parameter name="transport.vfs.ActionAfterFailure">MOVE</parameter> > <target> > <inSequence> > <smooks config-key="smooks-key"> > <input type="xml"/> > <output type="xml"/> > </smooks> > </inSequence> > </target> > </proxy> > </definitions> > > Is any configuration needed to avoid this problem? > > Thanks, > Lakmali > -- > Lakmali Baminiwatta* > * > Software Engineer > WSO2, Inc.: http://wso2.com > lean.enterprise.middleware > mobile: +94 71 2335936 > * > * > -- Dushan Abeyruwan *Senior Software Engineer* *Integration Technologies Team* *Member of Integration MC* *WSO2 Inc. http://wso2.com/* *Mobile:(+94)714408632*
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
