axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Molettiere <pie...@axonstudios.net>
Subject OutOfMemoryError Test Case
Date Wed, 30 Jun 2004 00:14:49 GMT

So, I sent this to the list with a zip file including the test case, 
and nice jars, and all the source, but the list doesn't accept zip 
files.

Where do you want it?

--Peter

Begin forwarded message:

> Sorry for the delay in getting this out to the list, but here it is
> finally. What we basically found is that axis doesn't leak no matter
> how many calls you fire off from a single thread, but when you start
> running each call on a separate thread, calls start dying (we think
> during the ser/deser process somewhere) during requests with
> OutOfMemoryErrors.
>
> The attached zip file contains a test case which reproduces the problem
> consistently. In com/truereq/test/axis/ there is a build.xml file with
> targets to install the server jar for the test service, deploy it (we
> have both a streaming and non-streaming wsdd included, with a target to
> deploy each), and a target to make jars. There is no target to compile
> the classes, but only because I've been compiling them with IDEA. The
> memory-test target runs the client app to show the leak. Note: we've
> been running our server with -Xmx=768M.
>
> The included jar files include the classes already compiled, but of
> course, source is included.
>
> If you restart your server before running the test, you'll see output
> in catalina.out (or wherever stderr goes to on your platform) that
> looks like this:
>
>> MemoryTester memory report
>> 	total	12767232
>> 	free	5971136
>> 	max	855638016
>> 	delta total	12767232
>> 	delta free	5971136
>> 	delta max	855638016
>>
>> MemoryTester memory report
>> 	total	130650112
>> 	free	114728344
>> 	max	855638016
>> 	delta total	117882880
>> 	delta free	108757208
>> 	delta max	0
>
> This shows used memory (total - free) at 6796096 before the test and
> 15921768 after the test.
>
> You need to restart the server to reset the memory counters used to
> calculate the deltas. We run gc immediately before the test, and
> immediately after, and measure memory usage after gc has run.
>
> Client output looks like this:
>
>> [chromium:truereq/test/axis] pietro% ant memory-test
>> Buildfile: build.xml
>>
>> memory-test:
>>      [java] Streaming is off
>>      [java] log4j:WARN No appenders could be found for logger
>> (org.apache.axis.i18n.ProjectResourceBundle).
>>      [java] log4j:WARN Please initialize the log4j system properly.
>>      [java] Creating tree 3 x 10 (1111 entities)
>>      [java] Calling run GC
>>      [java] Creating client thread: 0
>>      [java] Creating client thread: 1
>>      [java] Creating client thread: 2
>>      [java] Creating client thread: 3
>>      [java] Creating client thread: 4
>>      [java] Creating client thread: 5
>>      [java] Creating client thread: 6
>>      [java] Creating client thread: 7
>>      [java] Creating client thread: 8
>>      [java] Creating client thread: 9
>>      [java] Creating client thread: 10
>>      [java] Creating client thread: 11
>>      [java] Creating client thread: 12
>>      [java] Creating client thread: 13
>>      [java] Creating client thread: 14
>>      [java] java.lang.OutOfMemoryError
>>      [java] Thread finished: MemTestClient11
>>      [java] java.lang.OutOfMemoryError
>>      [java] Thread finished: MemTestClient3
>>      [java] java.lang.OutOfMemoryError
>>      [java] Thread finished: MemTestClient10
>>      [java] java.lang.OutOfMemoryError
>>      [java] Thread finished: MemTestClient4
>>      [java] java.lang.OutOfMemoryError
>>      [java] Thread finished: MemTestClient6
>>      [java] java.lang.OutOfMemoryError
>>      [java] Thread finished: MemTestClient14
>>      [java] java.lang.OutOfMemoryError
>>      [java] Thread finished: MemTestClient1
>>      [java] java.lang.OutOfMemoryError
>>      [java] Thread finished: MemTestClient2
>>      [java] java.lang.OutOfMemoryError
>>      [java] Thread finished: MemTestClient8
>>      [java] java.lang.OutOfMemoryError
>>      [java] Thread finished: MemTestClient7
>>      [java] java.lang.OutOfMemoryError
>>      [java] Thread finished: MemTestClient9
>>      [java] java.lang.OutOfMemoryError
>>      [java] Thread finished: MemTestClient12
>>      [java] java.lang.OutOfMemoryError
>>      [java] Thread finished: MemTestClient0
>>      [java] java.lang.OutOfMemoryError
>>      [java] Thread finished: MemTestClient13
>>      [java] java.lang.OutOfMemoryError
>>      [java] Thread finished: MemTestClient5
>>      [java] All threads finished, calling run GC
>>
>> BUILD SUCCESSFUL
>> Total time: 11 minutes 59 seconds


Mime
View raw message