tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From TFoh...@t-online.de (Torsten Fohrer)
Subject [QUESTION]: CoyoteWriter in error, never cleaned up -> NEW RELEASE/FIX
Date Thu, 19 Dec 2002 11:15:46 GMT

Include the patch please either in the current release or tag a new with him.

Some Reload and the empty page problem, after I have discover her, break down 
to the CoyoteWriter, are solved with this patch.....

Torsten

On Thursday 19 December 2002 08:25, you wrote:
> Mark Plotnick wrote:
> > I'm using a rather complicated web page with two frames and
> > a jsp in both frames.
> >
> > The upper frame has an applet, and the applet loads a
> > document by calling a servlet (in the same session as the page).
> >
> > Clicking within the applet will cause new pages to load in the
> > lower page.
> >
> >
> > As a result of all this activity I seem to get the "Socket Error"
> > bug described in thread "Problem with Socket closing" and
> > bug#12810.
> >
> >
> > Things would still not be too bad if the "CoyoteWriter" objects
> > were recycled. When the socket error occurs, the relevant
> > "CoyoteWriter" objects get marked as being in error.
> >
> > The problem is Tomcat (4.1.17 & 16) is still trying to reuse
> > these "CoyoteWriter" objects with the result of tomcat
> > returning blank pages to the browser.
> >
> >
> > CoyoteWriter does have a "isError()" method. A grep through
> > the source reveals nothing is ever calling this method.
> >
> > It seems reasonable that after a socket write error, these
> > objects should get cleaned up and the application would
> > have a reasonable chance to recover.
>
> Yes, this is correct (and a major bug, expect a new release soon).
> There is no problem with recycling after an error. OTOH, the writer must
> not be set to a non error state right away once an IOException occurred.
>
> > I appreciate any insight and feedback on where these
> > "CoyoteWriter" objects should be managed.
>
> Here's a patch:
>
> Index: CoyoteResponse.java
> ===================================================================
> RCS file:
> /home/cvs/jakarta-tomcat-connectors/coyote/src/java/org/apache/coyote/tomca
>t4/CoyoteResponse.java,v retrieving revision 1.30
> diff -r1.30 CoyoteResponse.java
> 322a323,324
>
>  >         writer.recycle();
>
> Index: CoyoteWriter.java
> ===================================================================
> RCS file:
> /home/cvs/jakarta-tomcat-connectors/coyote/src/java/org/apache/coyote/tomca
>t4/CoyoteWriter.java,v retrieving revision 1.2
> diff -r1.2 CoyoteWriter.java
> 98a99,109
>
>  >     // --------------------------------------------------------
>
> Package Methods
>
>  >     /**
>  >      * Recycle.
>  >      */
>  >     void recycle() {
>  >         error = false;
>  >     }
>
> Remy
>
>
> --
> To unsubscribe, e-mail:  
> <mailto:tomcat-dev-unsubscribe@jakarta.apache.org> For additional commands,
> e-mail: <mailto:tomcat-dev-help@jakarta.apache.org>


--
To unsubscribe, e-mail:   <mailto:tomcat-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:tomcat-dev-help@jakarta.apache.org>


Mime
View raw message