Out Of Memory Error in Web Service Transformer

Dedicated to DataStage and DataStage TX editions featuring IBM<sup>®</sup> Service-Oriented Architectures.

Moderators: chulett, rschirm

Post Reply
raghav_ds
Premium Member
Premium Member
Posts: 40
Joined: Wed May 04, 2011 2:21 am

Out Of Memory Error in Web Service Transformer

Post by raghav_ds »

I have an API which is exposed for HTTP call. This webservice is a generic one which has a simple request which reads entire xml as a string and give response also in a single column.

While invoking the input we have to write the entire xml in CDATA and send it as a request. The entire response is given in a single column within CDATA. Now the problem is that I have invoked a request for one operation, which gave a response of 720KB but the job failed with Out of Memory error.

Is there any way where I can increase the memory for Web Service transformer. We are expecting huge responses from the webservice. The expectation is the maximum size of an xml can be around 60MB.

Here is the error message:
=========================================
Warning 1: APT_CombinedOperatorController,0: JVMDUMP006I Processing dump event "systhrow", detail "java/lang/OutOfMemoryError" - please wait.

Warning2: APT_CombinedOperatorController,0: JVMDUMP032I JVM requested Snap dump using '/opt/IBM/InformationServer/Server/Projects/TestProject1/Snap.20110914.163526.2158602.0001.trc' in response to an event

Warning: APT_CombinedOperatorController,0: JVMDUMP013I Processed dump event "systhrow", detail "java/lang/OutOfMemoryError".

Error Message
APT_CombinedOperatorController,0: Fatal Error: Fatal: java.lang.OutOfMemoryError
at org.apache.axis.message.SAX2EventRecorder$objArrayVector.add(SAX2EventRecorder.java:281)
at org.apache.axis.message.SAX2EventRecorder.startEntity(SAX2EventRecorder.java:151)
at org.apache.axis.encoding.DeserializationContextImpl.startEntity(DeserializationContextImpl.java:1106)
at org.apache.xerces.parsers.AbstractSAXParser.startGeneralEntity(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.handleCharacter(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanEntityReference(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(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.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl.parse(Unknown Source)
at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:242)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:538)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:376)
at org.apache.axis.client.Call.invokeEngine(Call.java:2583)
at org.apache.axis.client.Call.invoke(Call.java:2553)
at org.apache.axis.client.Call.invoke(Call.java:1753)
at com.ascentialsoftware.wsclient.OperationCall.invoke(OperationCall.java:266)
at com.ascentialsoftware.wsclient.WebService.callServiceInternal(WebService.java:1685)
at com.ascentialsoftware.wsclient.WebService.callService(WebService.java:1591)
at com.ascentialsoftware.wsclient.WebService.callService(WebService.java:1544)
at com.ascentialsoftware.wspack.Transformer.process(Transformer.java:104)
at com.ascentialsoftware.jds.StageFactory.runStage(StageFactory.java:544)
at com.ascentialsoftware.jds.StageFactory.runTransformer(StageFactory.java:361)
eostic
Premium Member
Premium Member
Posts: 3838
Joined: Mon Oct 17, 2005 9:34 am

Post by eostic »

You can try playing with the heap size for the jvm....use your right mouse on the WS Stage and select "grid style"....then look for the jvm settings and pass along whatever jvm values you want for things like memory... (you'll have to look up the exact syntax)....

Ernie
Ernie Ostic

blogit!
<a href="https://dsrealtime.wordpress.com/2015/0 ... ere/">Open IGC is Here!</a>
raghav_ds
Premium Member
Premium Member
Posts: 40
Joined: Wed May 04, 2011 2:21 am

Post by raghav_ds »

I have added the JVM options and the Job Completed successfully. Thank you Ernie
eostic
Premium Member
Premium Member
Posts: 3838
Joined: Mon Oct 17, 2005 9:34 am

Post by eostic »

Excellent and congrats! ...perhaps you can pass along the syntax you used in this thread for future reference.....I usually just google it when I need it, but it would be good to have in here ...Thanks!!

Ernie
Ernie Ostic

blogit!
<a href="https://dsrealtime.wordpress.com/2015/0 ... ere/">Open IGC is Here!</a>
raghav_ds
Premium Member
Premium Member
Posts: 40
Joined: Wed May 04, 2011 2:21 am

Post by raghav_ds »

Right CLick Web Service transformer -> Grid Style->Properties->JVM Options

In JVM Options I have typed -Xmx512m command.
Post Reply