You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Rob Hartill <ha...@hyperreal.com> on 1995/10/06 21:18:15 UTC

Apache Patch: timeout vs abort (fwd)

ack sent

Forwarded message:
> From sabat@enterprise.Dts.Harris.COM  Fri Oct  6 11:32:43 1995
> Date: Fri, 6 Oct 1995 11:30:42 -0700
> From: sabat@enterprise.Dts.Harris.COM (Steve Abatangle)
> Message-Id: <95...@velveeta.harris.com>
> To: apache-bugs@mail.apache.org
> Subject: Apache Patch: timeout vs abort
> Content-Length: 1401
> 
> Apache .8.14 patch: timeout/abort
> 
> 
> This is a patch that lets http_main.c differentiate between client
> timeouts and client aborts. I whipped it up because
> 
> a] it's useful information -- if you're getting a lot of timeouts,
>    you may have network problems that need fixing. A large number
>    of aborts might tell you your pages are too full of huge GIFs.
>    But if you can't tell the difference between a timeout and an
>    abort, you aren't able to spot these kinds of problems.
> 
> b] NCSA has something similar in 1.4+.
> 
> 
> Steve Abatangle
> sabat@dts.harris.com
> 
> 
> 
> 
--- http_main.c       1995/10/6 11:16:45
230c230
<     char errstr[MAX_STRING_LEN];
---
>     char errstr[MAX_STRING_LEN],action[MAX_STRING_LEN];
244,248c244,259
<     
<     sprintf(errstr,"%s timed out for %s",
< 	    timeout_name ? timeout_name : "request",
< 	    current_conn->remote_name);
<     
---
> 
>     if (sig==SIGALRM) {                 /* SIGALRM is a timeout */
>             strcpy (action, "timed out");
>     }
>     else if (sig==SIGPIPE) {            /* SIGPIPE is probably an abort */
>             strcpy (action, "aborted");
>     }
>     else {                              /* extra wackiness just in case */
>             strcpy (action, "stopped unidentifiably");
>     }
>  
>     sprintf(errstr,"%s %s for %s",
>     timeout_name ? timeout_name : "request",
>     action,
>     current_conn->remote_name);
> 



Re: Apache Patch: timeout vs abort (fwd)

Posted by Brian Behlendorf <br...@organic.com>.
If the patch works as advertised, I consider this a good thing - and not 
a functional enhancement (which would delay it until post-1.0)

	Brian

On Fri, 6 Oct 1995, Rob Hartill wrote:
> ack sent
> 
> Forwarded message:
> > From sabat@enterprise.Dts.Harris.COM  Fri Oct  6 11:32:43 1995
> > Date: Fri, 6 Oct 1995 11:30:42 -0700
> > From: sabat@enterprise.Dts.Harris.COM (Steve Abatangle)
> > Message-Id: <95...@velveeta.harris.com>
> > To: apache-bugs@mail.apache.org
> > Subject: Apache Patch: timeout vs abort
> > Content-Length: 1401
> > 
> > Apache .8.14 patch: timeout/abort
> > 
> > 
> > This is a patch that lets http_main.c differentiate between client
> > timeouts and client aborts. I whipped it up because
> > 
> > a] it's useful information -- if you're getting a lot of timeouts,
> >    you may have network problems that need fixing. A large number
> >    of aborts might tell you your pages are too full of huge GIFs.
> >    But if you can't tell the difference between a timeout and an
> >    abort, you aren't able to spot these kinds of problems.
> > 
> > b] NCSA has something similar in 1.4+.
> > 
> > 
> > Steve Abatangle
> > sabat@dts.harris.com
> > 
> > 
> > 
> > 
> --- http_main.c       1995/10/6 11:16:45
> 230c230
> <     char errstr[MAX_STRING_LEN];
> ---
> >     char errstr[MAX_STRING_LEN],action[MAX_STRING_LEN];
> 244,248c244,259
> <     
> <     sprintf(errstr,"%s timed out for %s",
> < 	    timeout_name ? timeout_name : "request",
> < 	    current_conn->remote_name);
> <     
> ---
> > 
> >     if (sig==SIGALRM) {                 /* SIGALRM is a timeout */
> >             strcpy (action, "timed out");
> >     }
> >     else if (sig==SIGPIPE) {            /* SIGPIPE is probably an abort */
> >             strcpy (action, "aborted");
> >     }
> >     else {                              /* extra wackiness just in case */
> >             strcpy (action, "stopped unidentifiably");
> >     }
> >  
> >     sprintf(errstr,"%s %s for %s",
> >     timeout_name ? timeout_name : "request",
> >     action,
> >     current_conn->remote_name);
> > 
> 
> 
> 
> 

--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--
brian@organic.com  brian@hyperreal.com  http://www.[hyperreal,organic].com/