EPrints Technical Mailing List Archive

Message: #02808


< Previous (by date) | Next (by date) > | < Previous (in thread) | Next (in thread) > | Messages - Most Recent First | Threads - Most Recent First

[EP-tech] Re: Error "Apache2 IO write: (103)"


Centro de Documentación dijo [Sat, Mar 22, 2014 at 12:13:41PM -0300]:
> Hi guys,
> 
> I've noticed lots of "Apache2 IO write: (103) Software caused
> connection abort" messages appearing in our apache log. I'm worried
> because there are a lot of them. I think it's something unusual.
> 
> Can something force eprints to stop a file retrieval? I mean something
> strange that could cause it.
> 
> Is there a relationship between those messages and errors 500?
> 
> I'm running EPrints 3.3.10, Apache 2.2.22, mod_perl/2.0.7
> 
> Regards,
> 
> Cristian
> 
> /////////////////////////////////////////////
> 
> Error in file retrieval: :Apache2 IO write: (103) Software caused
> connection abort at
> /usr/share/eprints3/perl_lib/EPrints/Apache/Storage.pm line 207
> ------------------------------------------------------------------
>  at /usr/share/eprints3/perl_lib/EPrints/Apache/Storage.pm line 267
>     EPrints::Apache::Storage::handler('Apache2::RequestRec=SCALAR(0x7fa7d9657610)')
> called at -e line 0
>     eval {...} called at -e line 0
> ------------------------------------------------------------------

Hi,

I tried to help Cristian a bit here in Spanish: Having a "Software
caused connection abort" at "Apache2 IO write" sounds quite plausible
when a file transfer is requested and then aborted before it
finishes. As an example, I got the same message at my server by
requesting a file limiting the download rate, and aborting the
connection seconds afterwards:

$ wget 'http://ru.iiec.unam.mx/2073/31/MexTrampImprCorreg21feb13.pdf' --limit-rate=100
--2014-03-24 12:24:03--  http://ru.iiec.unam.mx/2073/31/MexTrampImprCorreg21feb13.pdf
Resolving ru.iiec.unam.mx (ru.iiec.unam.mx)... 132.248.72.141
Connecting to ru.iiec.unam.mx (ru.iiec.unam.mx)|132.248.72.141|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2484053 (2.4M) [application/pdf]
Saving to: ‘MexTrampImprCorreg21feb13.pdf’

 0% [                                                                                                                   ] 500          100B/s  eta 6h 53m  ^C

This makes the following message be logged in /var/log/apache2/error.log:

------------------------------------------------------------------
---------------- EPrints System Error ----------------------------
------------------------------------------------------------------
Error in file retrieval: :Apache2 IO write: (103) Software caused connection abort at /usr/share/eprints3/perl_lib/EPrints/Apache/Storage.pm line 258
------------------------------------------------------------------
 at /usr/share/eprints3/perl_lib/EPrints/Apache/Storage.pm line 267
 EPrints::Apache::Storage::handler('Apache2::RequestRec=SCALAR(0xfc1f63bc)') called at -e line 0
 eval {...} called at -e line 0
[Mon Mar 24 12:24:27 2014] [error] [client 132.248.72.141] EPrints::abort()\n

What I feel on this is that this condition is _not_ really an error
message, and that outputting this information leads to
confusion. Maybe this kind of exception should rather be trapped and
not logged in error.log?