Package: approx
Version: 4.0-1
Severity: important

I feel like I must be doing something wrong, but I cannot for the life of me
imagine what it is.  Basically, despite the udebs I want being in the cache,
and the cache finding the file, it's deciding to download the file again
anyway.  As an example, I tried to download the net-retriever udeb.  The
logs show:

May  6 13:53:24 strumpet approx: Connection from 127.0.0.1 port 59264 
May  6 13:53:24 strumpet approx: Request 
/debian/pool/main/n/net-retriever/download-installer_1.23_all.udeb 
May  6 13:53:24 strumpet approx:   User-Agent: Wget/1.11.4 
May  6 13:53:24 strumpet approx:   Accept: */* 
May  6 13:53:24 strumpet approx:   Host: localhost:9999 
May  6 13:53:24 strumpet approx:   Connection: Keep-Alive 
May  6 13:53:24 strumpet approx:   => cache miss 
May  6 13:53:24 strumpet approx: Command: /usr/bin/curl --fail --silent 
--header "Pragma: no-cache"  --include 
"http://mirror.internode.on.net/pub/debian/pool/main/n/net-retriever/download-installer_1.23_all.udeb";
 
May  6 13:53:24 strumpet approx:   HTTP/1.1 200 OK 
May  6 13:53:24 strumpet approx:   Date: Wed, 06 May 2009 03:53:24 GMT 
May  6 13:53:24 strumpet approx:   Server: Apache 
May  6 13:53:24 strumpet approx:   Last-Modified: Sun, 21 Sep 2008 22:32:08 GMT 
May  6 13:53:24 strumpet approx:   ETag: "21bc408e-b3e-4576f813baa00" 
May  6 13:53:24 strumpet approx:   Accept-Ranges: bytes 
May  6 13:53:24 strumpet approx:   Content-Length: 2878 
May  6 13:53:24 strumpet approx:   Content-Type: application/x-debian-package 
May  6 13:53:24 strumpet approx:   open cache 
debian/pool/main/n/net-retriever/download-installer_1.23_all.udeb 
May  6 13:53:24 strumpet approx: Proxy response 
May  6 13:53:24 strumpet approx:   Content-Type: text/plain 
May  6 13:53:24 strumpet approx:   Status: 200 
May  6 13:53:24 strumpet approx:   Content-Length: 2878 
May  6 13:53:24 strumpet approx:   Last-Modified: Sun, 21 Sep 2008 22:32:08 GMT 
May  6 13:53:24 strumpet approx:   close cache 
debian/pool/main/n/net-retriever/download-installer_1.23_all.udeb 
May  6 13:53:24 strumpet approx:   setting mtime to Sun, 21 Sep 2008 22:32:08 
GMT 
May  6 13:53:24 strumpet approx:   
http://mirror.internode.on.net/pub/debian/pool/main/n/net-retriever/download-installer_1.23_all.udeb:
 delivered 

Hmm, file mustn't be in the cache.  But wait:

$ sudo ls -l 
/var/cache/approx/debian/pool/main/n/net-retriever/net-retriever_1.23_all.udeb
-rw-r--r-- 1 approx approx 15100 2008-09-22 08:32 
/var/cache/approx/debian/pool/main/n/net-retriever/net-retriever_1.23_all.udeb

Oh, so approx must be looking somewhere else.  But it isn't!  It's finding
the file and stating it a bunch of times:

strumpet:~$ sudo strace -f -e trace=stat,chdir -p 3548
[...]
[pid 15553] chdir("/var/cache/approx")  = 0
[...]
[pid 15553] 
stat("debian/pool/main/n/net-retriever/download-installer_1.23_all.udeb", 
{st_mode=S_IFREG|0644, st_size=2878, ...}) = 0
[pid 15553] 
stat("debian/pool/main/n/net-retriever/download-installer_1.23_all.udeb", 
{st_mode=S_IFREG|0644, st_size=2878, ...}) = 0
[pid 15553] 
stat("debian/pool/main/n/net-retriever/download-installer_1.23_all.udeb.hint", 
0x7fff2996d2b0) = -1 ENOENT (No such file or directory)
[pid 15553] 
stat("debian/pool/main/n/net-retriever/download-installer_1.23_all.udeb", 
{st_mode=S_IFREG|0644, st_size=2878, ...}) = 0

(pid 3548 happens to be my inetd, in case you're wondering)

Oh, perhaps the udeb is corrupt or something, and approx is being super-cool
and re-downloading it for me (although I'd expect it to replace the bad one,
in that case, but that's beside the point).  Oh no, it's fine:

strumpet:~$ sudo md5sum download-installer_1.23_all.udeb 
/var/cache/approx/debian/pool/main/n/net-retriever/download-installer_1.23_all.udeb
02571e9bba28a4f08f53884a4850ffcf  download-installer_1.23_all.udeb
02571e9bba28a4f08f53884a4850ffcf  
/var/cache/approx/debian/pool/main/n/net-retriever/download-installer_1.23_all.udeb

Besides, this is happening for every deb and udeb I download, not just this
one...

So, I'm out of options here -- as far as I can tell, approx is finding the
files in the cache and then just blatantly ignoring them in favour of
chewing up my data allowance.

I'm happy to be told I'm "doin' it rong", but it's a pretty stock approx
setup (I don't even know what knobs are available to tweak).  Packages files
and debs are cached and served fine, but these udebs... not a flicker.

Now that I think about it, I wonder if this bug has the same root cause as
#524960, which I also tested using a udeb...


-- System Information:
Debian Release: 5.0
  APT prefers stable
  APT policy: (990, 'stable'), (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.26-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_AU, LC_CTYPE=en_AU (charmap=ISO-8859-1)
Shell: /bin/sh linked to /bin/bash

Versions of packages approx depends on:
ii  adduser                   3.110          add and remove users and groups
ii  bzip2                     1.0.5-1        high-quality block-sorting file co
ii  curl                      7.18.2-8lenny2 Get a file from an HTTP, HTTPS or 
ii  debconf [debconf-2.0]     1.5.24         Debian configuration management sy
ii  libc6                     2.7-18         GNU C Library: Shared libraries
ii  libpcre3                  7.8-2          Perl 5 Compatible Regular Expressi
ii  lsb-base                  3.2-20         Linux Standard Base 3.2 init scrip
ii  openbsd-inetd [inet-super 0.20080125-2   The OpenBSD Internet Superserver
ii  update-inetd              4.31           inetd configuration file updater

approx recommends no packages.

approx suggests no packages.

-- debconf information excluded



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to