Mock servis: GC overhead limit exceeded
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-29-2011
01:23 AM
11-29-2011
01:23 AM
Mock servis: GC overhead limit exceeded
hi,
i'm running mock servis. in aprox 12 hours, mock must handle 400.000 requests. when mock recieves request A, request B (readRecord) is sent from mock to server and after server responses with response B, mock returns response A.
there are a lot of problems witm memory. at morning when i get to work SoapUI doesn't work. I can see in memory log, the graph is on the top, flat line and java (SoapUI) is using 1.2GiB of memory.
on windows, i solved the problem with disabling soapUI log and http log.
on linux, this doesn't work.
there is also problem, that i have to open all requests in CcsServiceSoap11Binding interface and minimaze them. if i don't open them, they don't work and if i don't minimize them, soapUI runs out of memmory also on windows.
please check if you can find anything. perhaps in mock start, onRequest script or mock Response1 Script?
on linux i'm using 3.6.2.
here are request for mock and response for testCase.
regards,
beno
i'm running mock servis. in aprox 12 hours, mock must handle 400.000 requests. when mock recieves request A, request B (readRecord) is sent from mock to server and after server responses with response B, mock returns response A.
there are a lot of problems witm memory. at morning when i get to work SoapUI doesn't work. I can see in memory log, the graph is on the top, flat line and java (SoapUI) is using 1.2GiB of memory.
on windows, i solved the problem with disabling soapUI log and http log.
on linux, this doesn't work.
there is also problem, that i have to open all requests in CcsServiceSoap11Binding interface and minimaze them. if i don't open them, they don't work and if i don't minimize them, soapUI runs out of memmory also on windows.
please check if you can find anything. perhaps in mock start, onRequest script or mock Response1 Script?
on linux i'm using 3.6.2.
here are request for mock and response for testCase.
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<Update_CRMRecord_StatusAS xmlns="http://test57.cocos.si/">
<pID>2032075</pID>
<pStatus>Finished</pStatus>
</Update_CRMRecord_StatusAS>
</S:Body>
</S:Envelope>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:readRecordResponse xmlns="http://ccs.service112.iskratel.si/xsd" xmlns:ns2="http://ccs.service112.iskratel.si">
<ns2:return>
<id>1772851</id>
<crdate>1316609942025</crdate>
<latitude>4169</latitude>
<longitude>2714</longitude>
<operatorid>1</operatorid>
<phonenumber>8344683104</phonenumber>
<radious>5768</radious>
</ns2:return>
</ns2:readRecordResponse>
</S:Body>
</S:Envelope>
regards,
beno
9 REPLIES 9
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-29-2011
07:33 AM
11-29-2011
07:33 AM
Hi,
thanks for this - do you get the same problems with 4.0.x? Also, have you tried disabling the request log in the MockService window?
/Ole
SmartBear Software
Did my reply answer your question? Give Kudos or Accept it as a Solution to help others. ⬇️⬇️⬇️
thanks for this - do you get the same problems with 4.0.x? Also, have you tried disabling the request log in the MockService window?
/Ole
SmartBear Software
Did my reply answer your question? Give Kudos or Accept it as a Solution to help others. ⬇️⬇️⬇️
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-29-2011
10:51 PM
11-29-2011
10:51 PM
i hope i'll get some results with 4.0.2 today.
i didn't disable MockService window, i just limited it to 300 rows.
can you tell me why do i have to open all 24 requests from CcsServiceSoap11Binding? if i don't do this than SoapUI doesn't work (new content is not put into request).
and if i don't minimize them than SoapUI runs into problems with memory. i think... it's strange, i'm also a bit confuzed.
i didn't disable MockService window, i just limited it to 300 rows.
can you tell me why do i have to open all 24 requests from CcsServiceSoap11Binding? if i don't do this than SoapUI doesn't work (new content is not put into request).
and if i don't minimize them than SoapUI runs into problems with memory. i think... it's strange, i'm also a bit confuzed.
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-30-2011
12:00 AM
11-30-2011
12:00 AM
Hi,
I agree.. we'll have to look at this and will get back to you...
regards,
/Ole
SmartBear Software
Did my reply answer your question? Give Kudos or Accept it as a Solution to help others. ⬇️⬇️⬇️
I agree.. we'll have to look at this and will get back to you...
regards,
/Ole
SmartBear Software
Did my reply answer your question? Give Kudos or Accept it as a Solution to help others. ⬇️⬇️⬇️
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-30-2011
04:09 AM
11-30-2011
04:09 AM
hi,
4.0.2 doesn't make any difference.
you can reproduse this easy.
heap memory usage is rising and rising and rising... you know what happenes later. >:D
i attached picture. right now soapUI still works, but it's close to the end, perhaps just 2 or 3 more hours before only killing java process can "help".
OS is Fedora 7.
windows platform doesn't have any problems.
regards,
beno
4.0.2 doesn't make any difference.
you can reproduse this easy.
heap memory usage is rising and rising and rising... you know what happenes later. >:D
i attached picture. right now soapUI still works, but it's close to the end, perhaps just 2 or 3 more hours before only killing java process can "help".
OS is Fedora 7.
windows platform doesn't have any problems.
regards,
beno
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-30-2011
06:12 AM
11-30-2011
06:12 AM
Hi Beno,
ok thanks - you need to access the response via the submit object returned by the submit method;
//define
def submit = null
synchronized(context.lock) {
String kreiran_req = "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:ccs=\"http://ccs.service112.iskratel.si\"><soapenv:Header/><soapenv:Body><ccs:readRecord><ccs:id>"+substr+...
request.requestContent = kreiran_req
// save submit
submit = request.submit( new com.eviware.soapui.impl.wsdl.WsdlSubmitContext( request ), false )
}
log.info submit.response.contentAsString
def TimeTaken = submit.response.timeTaken
....
if you change this throughout your script then it will work without having to have the request windows open.. this might help your memory issue also, at least I am not seeing any memory fill-up during a long-running loadtest
please try the above (make sure you change it everywhere) and let us know how it works..
if you are still having troubles, please send us your updated project so we can continue from there..
regards,
/Ole
SmartBear Software
Did my reply answer your question? Give Kudos or Accept it as a Solution to help others. ⬇️⬇️⬇️
ok thanks - you need to access the response via the submit object returned by the submit method;
//define
def submit = null
synchronized(context.lock) {
String kreiran_req = "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:ccs=\"http://ccs.service112.iskratel.si\"><soapenv:Header/><soapenv:Body><ccs:readRecord><ccs:id>"+substr+...
request.requestContent = kreiran_req
// save submit
submit = request.submit( new com.eviware.soapui.impl.wsdl.WsdlSubmitContext( request ), false )
}
log.info submit.response.contentAsString
def TimeTaken = submit.response.timeTaken
....
if you change this throughout your script then it will work without having to have the request windows open.. this might help your memory issue also, at least I am not seeing any memory fill-up during a long-running loadtest
please try the above (make sure you change it everywhere) and let us know how it works..
if you are still having troubles, please send us your updated project so we can continue from there..
regards,
/Ole
SmartBear Software
Did my reply answer your question? Give Kudos or Accept it as a Solution to help others. ⬇️⬇️⬇️
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-30-2011
06:25 AM
11-30-2011
06:25 AM
tnx ole,
fast replay because i have to go...
this is what i get:
Wed Nov 30 15:21:53 CET 2011:ERROR:java.lang.Exception: Cannot get property 'timeTaken' on null object
java.lang.Exception: Cannot get property 'timeTaken' on null object
at com.eviware.soapui.impl.wsdl.mock.WsdlMockResponse.evaluateScript(WsdlMockResponse.java:359)
at com.eviware.soapui.impl.wsdl.mock.WsdlMockResponse.execute(WsdlMockResponse.java:264)
at com.eviware.soapui.impl.wsdl.mock.WsdlMockOperation.dispatchRequest(WsdlMockOperation.java:259)
at com.eviware.soapui.impl.wsdl.mock.WsdlMockRunner.dispatchPostRequest(WsdlMockRunner.java:300)
at com.eviware.soapui.impl.wsdl.mock.WsdlMockRunner.dispatchRequest(WsdlMockRunner.java:384)
at com.eviware.soapui.monitor.JettyMockEngine$ServerHandler.handle(JettyMockEngine.java:714)
at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:938)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:755)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
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)
Caused by: java.lang.NullPointerException: Cannot get property 'timeTaken' on null object
at org.codehaus.groovy.runtime.NullObject.getProperty(NullObject.java:56)
at org.codehaus.groovy.runtime.InvokerHelper.getProperty(InvokerHelper.java:156)
at org.codehaus.groovy.runtime.callsite.NullCallSite.getProperty(NullCallSite.java:44)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGetProperty(AbstractCallSite.java:235)
at Script1.run(Script1.groovy:62)
at com.eviware.soapui.support.scripting.groovy.SoapUIGroovyScriptEngine.run(SoapUIGroovyScriptEngine.java:96)
at com.eviware.soapui.support.scripting.groovy.SoapUIProGroovyScriptEngineFactory$SoapUIProGroovyScriptEngine.run(SourceFile:88)
at com.eviware.soapui.impl.wsdl.mock.WsdlMockResponse.evaluateScript(WsdlMockResponse.java:355)
... 17 more
beno
fast replay because i have to go...
this is what i get:
Wed Nov 30 15:21:53 CET 2011:ERROR:java.lang.Exception: Cannot get property 'timeTaken' on null object
java.lang.Exception: Cannot get property 'timeTaken' on null object
at com.eviware.soapui.impl.wsdl.mock.WsdlMockResponse.evaluateScript(WsdlMockResponse.java:359)
at com.eviware.soapui.impl.wsdl.mock.WsdlMockResponse.execute(WsdlMockResponse.java:264)
at com.eviware.soapui.impl.wsdl.mock.WsdlMockOperation.dispatchRequest(WsdlMockOperation.java:259)
at com.eviware.soapui.impl.wsdl.mock.WsdlMockRunner.dispatchPostRequest(WsdlMockRunner.java:300)
at com.eviware.soapui.impl.wsdl.mock.WsdlMockRunner.dispatchRequest(WsdlMockRunner.java:384)
at com.eviware.soapui.monitor.JettyMockEngine$ServerHandler.handle(JettyMockEngine.java:714)
at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:938)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:755)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
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)
Caused by: java.lang.NullPointerException: Cannot get property 'timeTaken' on null object
at org.codehaus.groovy.runtime.NullObject.getProperty(NullObject.java:56)
at org.codehaus.groovy.runtime.InvokerHelper.getProperty(InvokerHelper.java:156)
at org.codehaus.groovy.runtime.callsite.NullCallSite.getProperty(NullCallSite.java:44)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGetProperty(AbstractCallSite.java:235)
at Script1.run(Script1.groovy:62)
at com.eviware.soapui.support.scripting.groovy.SoapUIGroovyScriptEngine.run(SoapUIGroovyScriptEngine.java:96)
at com.eviware.soapui.support.scripting.groovy.SoapUIProGroovyScriptEngineFactory$SoapUIProGroovyScriptEngine.run(SourceFile:88)
at com.eviware.soapui.impl.wsdl.mock.WsdlMockResponse.evaluateScript(WsdlMockResponse.java:355)
... 17 more
beno
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-30-2011
10:50 AM
11-30-2011
10:50 AM
Hi,
then it seems you got the script wrong somehow - can you paste it here?
regards!
/Ole
SmartBear Software
Did my reply answer your question? Give Kudos or Accept it as a Solution to help others. ⬇️⬇️⬇️
then it seems you got the script wrong somehow - can you paste it here?
regards!
/Ole
SmartBear Software
Did my reply answer your question? Give Kudos or Accept it as a Solution to help others. ⬇️⬇️⬇️
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-01-2011
12:44 AM
12-01-2011
12:44 AM
hi,
you're right. the script was wrong.
i have put def submit = null inside of {}, should be outside.
synchronized(context.lock) {
def submit = null
...
}
Another great information, it seems that memory problems (in linux os) are solved!
Hep memory usage is stable now. (4.0.2 SNAPSHOT version of SoapUI)
soapUI log and http log also don't make any problems (1000 row limit).
tnx,
beno
you're right. the script was wrong.
i have put def submit = null inside of {}, should be outside.
synchronized(context.lock) {
def submit = null
...
}
Another great information, it seems that memory problems (in linux os) are solved!

Hep memory usage is stable now. (4.0.2 SNAPSHOT version of SoapUI)
soapUI log and http log also don't make any problems (1000 row limit).
tnx,
beno
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-06-2011
07:08 AM
12-06-2011
07:08 AM
Great, thanks for the feedback!
regards,
/Ole
SmartBear Software
Did my reply answer your question? Give Kudos or Accept it as a Solution to help others. ⬇️⬇️⬇️
regards,
/Ole
SmartBear Software
Did my reply answer your question? Give Kudos or Accept it as a Solution to help others. ⬇️⬇️⬇️
