Support partial requests in access servlet
Description
Environment
Test Plan
Attachments
is depended on by
is related to
Activity
Stephen Marquard July 20, 2010 at 1:34 AM
r79661 needs to get merged into 1.0.x and 1.1.x kernels, and we need new releases of both kernels for the respective maint. branches and next releases (2.6.3 / 2.7.1).
This resolves an issue with Adobe Reader with Firefox/WinXP (latest versions) hanging when downloading or navigating through PDFs which have Fast Web View enabled and use partial content requests.
Adobe Reader turns out to be fussy about the line-endings following the mime-separator boundaries and mime info in multipart requests. This change follows the exact format used by Apache 2.2 (\r\n instead of \n and \r\n following the final mime separator).
Stephen Marquard July 19, 2010 at 6:03 AM
We put this into production yesterday and have seen problems with the Adobe Reader plugin for Firefox 3 stalling on accessing PDF documents similar to that described here:
http://kb2.adobe.com/cps/807/cpsid_80780.html
Still investigating.
Steve Swinsburg July 6, 2010 at 4:39 PM
No issues with 1.0.14 here.
Steve Swinsburg June 17, 2010 at 3:31 PM
1.0.14 has been released and we will report back soon.
Steve Swinsburg May 24, 2010 at 4:07 PM
+1 to the second option, ie merge now and get some experience.
ANU is prepared to go with this, but don't have the resources to run our own kernel build. So if this was merged, we could tag and release a 1.0.14 kernel preview (1.0.14-preview or similar), and just adjust our local master/pom.xml kernel version to use that instead of 1.0.13.
We would then report back, and when time came for the real 1.0.14 release, adjust versions again and go with that instead.
WDYT?
The http protocol allows clients to request part of a file rather than the entire file as defined here:
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.5
The server outputs the http header
Accept-Ranges: bytes
after which a client may request a partial download, e.g.
GET /downloads/selenium.zip HTTP/1.1
Referer: http://qa1-za.sakaiproject.org/downloads/
Accept: /
Range: bytes=2350112-
The access servlet should support partial downloads as this may speed up downloading through download managers, and also supports resuming downloads that have been interrupted.