Hi
I'm seeing an occasional ArrayIndexOutOfBoundsException in the
org.apache.coyote.http11.InternalOutputBuffer write method. It appears
that the buffer holding the response headers (which has a default size
of 32000 bytes) is occasionally overflowing. I can't reliably repeat
this so I'm not sure under what circumstances it occurs - I have to
hammer the site for a while to get it to repeat!
I added some logging to the code to see what the buf byte array had in
it just as it was about to overflow and it appears to have multiple
responses of the form:
HTTP/1.1 200 OK
Content-Type: text/html;charset=ISO-8859-1
Cache-Control: no-cache, post-check=0, pre-check=0
Pragma: no-cache
Expires: Thu, 01 Dec 1994 16:00:00 GMT
Transfer-Encoding: chunked
Date: Thu, 21 Nov 2002 12:02:39 GMT
Server: Apache Coyote/1.0
Transfer-Encoding: chunked
Date: Thu, 21 Nov 2002 12:02:39 GMT
Server: Apache Coyote/1.0
Transfer-Encoding: chunked
Date: Thu, 21 Nov 2002 12:02:39 GMT
Server: Apache Coyote/1.0
Transfer-Encoding: chunked
Date: Thu, 21 Nov 2002 12:02:39 GMT
Server: Apache Coyote/1.0
with an arbitrary number of repeats of the last three lines.
I'm not sure why the buffer would have more than one response in it, and
I'm not sure why the transfer encoding, date and server lines are
repeated so often. Any ideas? Since I've only just started looking at
the source I'm not really familiar enough with the flow of the code to
know if this is expected behaviour.
I guess a short term fix would be to resize buf as required rather than
just assuming it has the capacity, but it would be nice to know why so
much stuff ends up in the array sometimes!
Any ideas?
Neil
--
Neil Milne Hippo IT Consultants Ltd
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
