Hi Thunder,

Sorry... We're using Axis 1.1 with JVM 1.4.2_02-b03 on Linux. Our JDOM
version, if applicable, is 1.0 Beta 8 or 9. Although bug 4724129 sounds
applicable I would expect they fixed that by now.

The problem really shows up with the multi-meg response. I suspect it
happens with all responses but the big one just makes it happen quicker.

Thanks again,
James



> Hi James,
>
> You did not mention the Axis or Java version you are using. See if this
> applies to your current use:
>
> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4724129
>
> --Thunder
>
> -----Original Message-----
> From: James CE Johnson [mailto:[EMAIL PROTECTED]
> Sent: Monday, September 20, 2004 8:57 AM
> To: [EMAIL PROTECTED]
> Subject: OutOfMemoryException from my Axis client
>
> Has anybody else seen anything like this?
>
> I've got an Axis-based server (Server "A") that must call another
> Axis-based server (Server "B"). In testing we discovered that Server A
> was
> running out of memory. Upon tracking it down we discovered that the bits
> of Server A that are client to Server B are the culprit. I now have a
> stripped-down command-line test client invoking methods on Server B.
> That
> test client is running out of memory.
>
> Server B provides three webservice calls. Two return simple, small
> strings. The third can return a string that is a meg or two. If my test
> client starts as few as 10 threads calling each method in turn it will
> run
> out of memory before all 10 can complete.
>
> I've bumped up the -Xxxx options but that only delays the problem. With
> enough client-side memory I can squeeze out a few more threads but not
> enough.
>
> I've also discovered that I can (apparently) run as many iterations of
> my
> test as I want with no memory leaks if I have only a single thread
> invoking the webservice. By "single thread" I mean one and only one
> thread, not multiple threads synchronized. (When I have multiple
> synchronized threads - such that only one is calling at any single point
> in time - I still run out of memory.)
>
> So, my question is, has anyone seen this kind of thing in an Axis
> client?
> Does Axis store some ThreadLocal data that might be causing this? Is
> there
> a way I can cleanly/safely have each thread "shut down" the Axis client
> when a given thread is done?
>
> Ultimately, I'll be calling "Server B" from within my EJBs and it would
> be
> very bad for them to run out of memory...
>
> Thanks,
> James

Reply via email to