sendfile() failed (22: Invalid argument

Evan Miller emmiller+gmane at gmail.com
Mon May 7 01:12:54 MSD 2007


Kingsley Foreman <kingsley at ...> writes:

> 
> Hi guys Im just trying to work out what the cause of this error is
> 
> crit] 29494#0: *788901 sendfile() failed (22: Invalid argument) while 
> sending response to client
> It only appears to happen on 1 3gig file the file gets downloaded over 1000 
> times a day this happens about 5 times.

What nginx version? The latest changelog (0.5.19) includes this:

    *) Bugfix: the files more than 2G could not be transferred using           
       sendfile and limit_rate on 64-bit platforms.                            

    *) Bugfix: the files more than 2G could not be transferred using           
       sendfile on 64-bit Linux. 

Possibly related? If you are running 0.5.19, I don't have a fix but I do have a
workaround. Put "sendfile off;" in your config, and nginx will use a different
system call to send the data.

Evan

> 
> Kingsley Foreman
> Technical Leader Content Services / Content Management Group
> 
> =============================================
> Internode Systems Pty Ltd
> 
> PO Box 284, Rundle Mall 5000
> Level 1, 132 Grenfell Street, Adelaide 5000
> Phone:  +61 8 8228 2978
> Fax:    +61 8 8235 6978
> Web:    http://www.internode.on.net
>         http://games.internode.on.net
> ============================================= 
> 
> 









More information about the nginx mailing list