Unfortunately it happens infrequently enough that I am unable to track
it to that level, however it does happen enough that it is a problem.
Is there is higher level of debug I can turn on in SOAP?  

I know that generally, the data being transferred is very small, no
string ever exceeds 20 characters.  It would be difficult to revert back
to 2.1, as there are already clients in the wild... I am hoping that 2.3
fixes the problem.

Jeremy

-----Original Message-----
From: Johan Strandberg [mailto:[EMAIL PROTECTED]] 
Sent: Tuesday, May 14, 2002 12:36 PM
To: [EMAIL PROTECTED]; Jeremy Levy
Subject: Re: call.invoke hangs occasionally


Yes, we have had this problem too.  

        SOAP-2_2 (release version from website)
        Transport HTTP
        J2SE1.4.0

Specifically when trying to unmarshal a reply where the reply is a
rather 
long string that is actually a [recursively] quoted XML message (i.e.,
it 
contains a *lot* of < stuff.)

Somewhere in across the JAXP interface something creates a *very* large
DOM 
tree (text-entity-text-entity etc...) and apparently this creates and 
releases large amounts of data structures.  Even though the total size
of the 
message is about 73K, the heap grows 9 to 10 Megabyte during the
unmarshal 
operation. [ick!]

Strictly speaking, it doesn't hang (at least in our case) since it does
come 
back after 20 minutes or so.  But that's not easy to tell an end user
with a 
straight face (event though I practice every day.)

The fix was to revert to the SOAP 2.1 (release version from website)
using 
the Xerxes 1.4.3 parser.

I suspect the size of the string is the critical factor.  Small strings
go 
very fast, but the time spent appears to be O(n^x) where x is > 3
relative to 
the size of the string.  (I have not spent too much time mapping the
exact 
curve.) 

There is a bug in the bugzilla database that appears related (2209)

        http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2209

But it is actually quite old (almost a year and still NEW) and appears
to 
have no recent activity (other than as a dumping-ground for duplicates).


--j


PS  I have added the essence of this report to bug 2209.


_______________________________________________________________
On Tuesday 14 May 2002 06:52 am, Jeremy Levy wrote:
> Has anybody noticed that on occasion making a soap
> call hangs?
>
> I have traced to back to this line:
>
> Response response = call.invoke(urls, "");
>
> What happens it it never comes back from that line and essentialy 
> hangs the entire thread..
>
> Has anyone expericened this or does anyone have any
> ideas?
>
> Jeremy
>
> __________________________________________________
> Do You Yahoo!?
> LAUNCH - Your Yahoo! Music Experience
> http://launch.yahoo.com

Reply via email to