Re: Apache2::RequestIO::print: (53) Software caused connection abort

André Warnier <[email protected]>
Newsgroups gmane.comp.apache.mod-perl
Message-ID <[email protected]>
[email protected] wrote:
> On Wed, Aug 4, 2010 at 7:45 PM, Fred Moyer <[email protected]> wrote:
> 
>> Are you trying to surpress the error message or fix the problem?  The
>> problem seems to be that your javascript is causing the connection to
>> time out.  Maybe increase the keep alive timeout?
>>
> 
> Just to clarify: javascript is not causing connection to time out. User is
> clicking a link before javascript finishes and page load completes.
> 
> 

Basically, Apache and mod_perl and your application are reacting properly : they can no 
longer write to the client, so they abort and log an error.

I would recommend trying to fix the root of the problem, rather than the symptom :
In 99% of the cases, the user clicks somewhere else because he is tired of waiting for the 
page to load.  Usually, that means at least 30 seconds ot so during which the user sees 
nothing much happening and starts wondering if his click got lost, or if the server or 
application is down. (People in airports get that way too, when their flight is delayed 
but nobody tells them anything).

The evident symptom is those logfile messages.  The not-so evident consequence however, is 
a bunch of users getting upset because in their view, the site is slow or doesn't work.

So, root of the problem : why is it taking so long ?

If there is a large javascript section in the page itself, it may help to see to it that 
this javascript is loaded only once, and cached by the browser. (And that would also speed 
up your website in general).

If it is the javascript itself doing something that takes so long (without user feedback) 
that the user gets impatient, then maybe you should have a look at that javascript.

A good tool to study this kind of issue is a browser plugin like HttpFox (for Firefox) or 
Fiddler2 (for IE).  These will show you exactly how the conversation looks like, from the 
browser point of view. It will maybe also show you that the same javascript monster is 
being requested over and over again, instead of being cached.  Or it may show you that the 
  browser is requesting icons, images, stylesheets that do not (or no longer) exist, and 
that this is uselessly consuming your bandwidth.

Another last-hope counter-measure would be to at least display something to the user, 
asking them to be patient and wait until the page is loaded.


>> On Wed, Aug 4, 2010 at 7:34 PM,  <[email protected]> wrote:
>>> Error logs are filling up with strange "File does not exist" errors and
>> code
>>> is trapping Apache exception:
>>>          Apache2::RequestIO::print: (53) Software caused connection abort
>>> These errors are repeatably caused by client breaking the connection
>> before
>>> page has loaded (page loads slowly because of extensive javascript).
>>> Is Apache misconfigured? Is my code failing to handle interrupt? Guidance
>>> greatly appreciated!
>>> Server: Apache/2.2.15 (FreeBSD) mod_ssl/2.2.15 OpenSSL/0.9.8e DAV/2
>>> mod_perl/2.0.4 Perl/v5.10.1
>>> Framework: Catalyst
>>>
>>> --
>>> Bikewise: http://www.bikewise.org
>>>
>>>
>>>
>>>
> 
> 
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.