Package: apt-cacher Version: 1.7.6 Severity: normal Dear Maintainer,
It appears that when an InRelease file disappears (as seems to have happened to wheezy following its release), apt-cacher returns the old file instead, albeit with the 404 message body overwriting the beginning of the file: michael@wibble:~$ curl -sD - http://mirror.waia.asn.au/debian/dists/wheezy/InRelease|head -30 HTTP/1.1 404 Not Found Date: Sun, 19 May 2013 11:11:31 GMT Server: Apache/2.2.14 (Ubuntu) Content-Length: 311 Content-Type: text/html; charset=iso-8859-1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>404 Not Found</title> </head><body> <h1>Not Found</h1> <p>The requested URL /debian/dists/wheezy/InRelease was not found on this server.</p> <hr> <address>Apache/2.2.14 (Ubuntu) Server at mirror.waia.asn.au Port 80</address> </body></html> michael@wibble:~$ http_proxy=http://yipyip:3142/ curl -sD - http://mirror.waia.asn.au/debian/dists/wheezy/InRelease|head -30 HTTP/1.1 200 OK Connection: Keep-Alive Date: Sun, 05 May 2013 20:45:05 GMT Via: 1.1 yipyip:3142 (apt-cacher/1.7.6) Accept-Ranges: bytes Age: 1175309 ETag: "d9d2003-3cd11-4dbe02bfcfd00" Server: Apache/2.2.14 (Ubuntu) Content-Length: 249105 Content-Type: text/plain Last-Modified: Sat, 04 May 2013 08:22:44 GMT Keep-Alive: timeout=15, max=100 X-AptCacher-URL: http://mirror.waia.asn.au/debian/dists/wheezy/InRelease <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>404 Not Found</title> </head><body> <h1>Not Found</h1> <p>The requested URL /debian/dists/wheezy/InRelease was not found on this server.</p> <hr> <address>Apache/2.2.14 (Ubuntu) Server at mirror.waia.asn.au Port 80</address> </body></html> n contrib non-free Description: Debian x.y Testing distribution - Not Released MD5Sum: 814fc8da206fc61184e03e8b66c9fc5f 22154933 Contents-amd64.gz bb9b23179ec2f9ce47806464fe7712c3 21865030 Contents-armel.gz 4252daaadc6253738435d158288c3edf 21757234 Contents-armhf.gz 1e1cdd3d53cab26ef82bc738b41ebac7 22332659 Contents-i386.gz While I unfortunately didn't have debugging enabled two weeks ago, I *can* show you what error.log looks like fetching the file now: Sun May 19 04:37:43 2013|debug [25263]: New INETD connection Sun May 19 04:37:43 2013|debug [25263]: Processing a new request line Sun May 19 04:37:43 2013|debug [25263]: got: 'HEAD /mirror.waia.asn.au/debian/dists/wheezy/InRelease' Sun May 19 04:37:43 2013|debug [25263]: Processing a new request line Sun May 19 04:37:43 2013|debug [25263]: got: 'Cache-Control: max-age=0' Sun May 19 04:37:43 2013|debug [25263]: Processing a new request line Sun May 19 04:37:43 2013|debug [25263]: got: 'Connection: Close' Sun May 19 04:37:43 2013|debug [25263]: Processing a new request line Sun May 19 04:37:43 2013|debug [25263]: got: '' Sun May 19 04:37:43 2013|debug [25263]: Resolved request is http://mirror.waia.asn.au/debian/dists/wheezy/InRelease Sun May 19 04:37:43 2013|debug [25263]: Index file: mirror.waia.asn.au_debian_dists_wheezy_InRelease Sun May 19 04:37:43 2013|debug [25263]: Locked header /var/cache/apt-cacher/headers/mirror.waia.asn.au_debian_dists_wheezy_InRelease Sun May 19 04:37:43 2013|debug [25263]: Freshness checks Sun May 19 04:37:43 2013|debug [25263]: Revalidating mirror.waia.asn.au_debian_dists_wheezy_InRelease. Age: 1122758 Sun May 19 04:37:43 2013|debug [25263]: Sending If-Modified-Since request Sun May 19 04:37:43 2013|debug [25263]: fetcher: GET http://mirror.waia.asn.au/debian/dists/wheezy/InRelease Sun May 19 04:37:43 2013|debug [25263]: Libcurl candidate: http://mirror.waia.asn.au/debian/dists/wheezy/InRelease Sun May 19 04:37:43 2013|debug [25263]: Global lock: Connect libcurl Sun May 19 04:37:43 2013|debug [25263]: Connection to running libcurl process found on /var/cache/apt-cacher/libcurl.socket Sun May 19 04:37:43 2013|debug [25263]: Release global lock [skipped libcurl process doing its stuff here] Sun May 19 04:37:43 2013|debug [25263]: libcurl reading of headers complete: 404 Sun May 19 04:37:43 2013|debug [25263]: Found EOF marker and status 0 (No error) Sun May 19 04:37:43 2013|debug [25263]: libcurl returned 404 for http://mirror.waia.asn.au/debian/dists/wheezy/InRelease Sun May 19 04:37:43 2013|debug [25263]: Got 404 Sun May 19 04:37:43 2013|debug [25263]: Complete check Sun May 19 04:37:43 2013|debug [25263]: cached file is complete: 249105 Sun May 19 04:37:43 2013|debug [25263]: OFFLINE Sun May 19 04:37:43 2013|debug [25263]: Unlocked header, checks done, can return now Sun May 19 04:37:43 2013|debug [25263]: Response: 200 OK Sun May 19 04:37:43 2013|debug [25263]: Headers: Connection: Keep-Alive Date: Sun, 05 May 2013 20:45:05 GMT Via: 1.1 yipyip:3142 (apt-cacher/1.7.6) Accept-Ranges: bytes Age: 1122758 ETag: "d9d2003-3cd11-4dbe02bfcfd00" Server: Apache/2.2.14 (Ubuntu) Content-Length: 249105 Content-Type: text/plain Last-Modified: Sat, 04 May 2013 08:22:44 GMT Keep-Alive: timeout=15, max=100 X-AptCacher-URL: http://mirror.waia.asn.au/debian/dists/wheezy/InRelease Sun May 19 04:37:43 2013|debug [25263]: Package sent Sun May 19 04:37:43 2013|debug [25263]: Processing a new request line Sun May 19 04:37:43 2013|debug [25263]: Clean up before exiting. The result of this is expired release file errors from every apt-get update since wheezy's release. A glance at the code around line 770 suggests that all errors result in the cached file being returned (and an 'OFFLINE' status). I'm not convinced that this is a good idea, at least with 404s. :P I suspect the returned cached file being contaminated by the 404 response body is a separate bug... -- System Information: Debian Release: 7.0 APT prefers stable APT policy: (500, 'stable'), (490, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 3.2.0-4-amd64 (SMP w/1 CPU core) Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages apt-cacher depends on: ii debconf [debconf-2.0] 1.5.49 ii dpkg 1.16.10 ii ed 1.6-2 ii libfilesys-df-perl 0.92-4+b1 ii libfreezethaw-perl 0.5001-1 ii libio-interface-perl 1.06-1+b1 ii libnetaddr-ip-perl 4.062+dfsg-1 ii libsys-syscall-perl 0.23-1 ii libwww-curl-perl 4.15-1+b2 ii libwww-perl 6.04-1 ii lsb-base 4.1+Debian8 ii perl 5.14.2-21 ii ucf 3.0025+nmu3 ii update-inetd 4.43 Versions of packages apt-cacher recommends: pn libberkeleydb-perl <none> Versions of packages apt-cacher suggests: ii libio-socket-inet6-perl 2.69-2 -- Configuration Files: /etc/apt-cacher/apt-cacher.conf changed: group = www-data user = www-data debug=1 allowed_hosts=192.168.0.0/24,192.168.1.0/24,192.168.2.0/24,134.115.83.129,134.115.68.21 limit=10000k /etc/default/apt-cacher changed: AUTOSTART=1 -- debconf information: * apt-cacher/mode: daemon -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org