On Saturday 17 March 2007 13:24, Chris Halls wrote: > > Hi Andrew > > Thanks for your ping. Actually, I already fixed this bug in subversion > but have not had time to finish testing and preparing a release. Here's > the current changelog: > > apt-proxy (1.9.36~svn) unstable; urgency=low > > [ Chris Halls ] > * Acknowledge NMU by Steinar H. Gunderson, thanks! (Closes: #386344) > * Close a longstanding bug where clients would hang when receiving > files from the cache. The problem was caused by reusing the same > file handle for several requests at once. > (Closes: #274679, #382078, #322242, #397399, #397403, #398217)
> Please feel free to give it a try: > > svn co svn+ssh://svn.debian.org/svn/apt-proxy/trunk apt-proxy > cd apt-proxy > <as root> ./aptest > Ok. I am currently running apt-proxy as above. This does seem better. After approx 2 hours the exception re-occurred. This time apt-proxy was able to recover and continue. 2007/03/20 23:19 EST [TimeoutProtocol,client] Stopping factory <apt_proxy.fetchers.HttpFetcher instance at 0xb6ab75cc> 2007/03/20 23:19 EST [TimeoutProtocol,client] Stopping factory <twisted.protocols.policies.TimeoutFactory instance at 0xb6aaf8ec> 2007/03/20 23:19 EST [Channel,211,192.168.1.23] [CacheEntry] this is a real request:/var/cache/apt-proxy/debian/pool/main/v/valgrind/valgrind_3.2.1-1_i386.deb 2007/03/20 23:19 EST [Channel,212,192.168.1.23] [CacheEntry] this is a real request:/var/cache/apt-proxy/debian/pool/main/v/valgrind/valgrind_3.2.1-1_i386.deb 2007/03/20 23:20 EST [-] [CacheEntry] sending file from cache:/var/cache/apt-proxy/debian/pool/main/v/valgrind/valgrind_3.2.1-1_i386.deb 2007/03/20 23:20 EST [-] [CacheEntry] transfer_file:/var/cache/apt-proxy/debian/pool/main/v/valgrind/valgrind_3.2.1-1_i386.deb 2007/03/20 23:20 EST [Channel,213,192.168.1.23] [CacheEntry] this is a real request:/var/cache/apt-proxy/debian/pool/main/v/valgrind/valgrind_3.2.1-1_i386.deb 2007/03/20 23:21 EST [Channel,214,192.168.1.23] [CacheEntry] this is a real request:/var/cache/apt-proxy/debian/pool/main/v/valgrind/valgrind_3.2.1-1_i386.deb 2007/03/20 23:21 EST [-] [CacheEntry] sending file from cache:/var/cache/apt-proxy/debian/pool/main/v/valgrind/valgrind_3.2.1-1_i386.deb 2007/03/20 23:21 EST [-] [CacheEntry] transfer_file:/var/cache/apt-proxy/debian/pool/main/v/valgrind/valgrind_3.2.1-1_i386.deb 2007/03/20 23:21 EST [-] [verify] cache file verification FAILED for /var/cache/apt-proxy/debian/pool/main/v/valgrind/valgrind_3.2.1-1_i386.deb: Verification process timed out 2007/03/20 23:21 EST [-] [CacheEntry] start download:pool/main/v/valgrind/valgrind_3.2.1-1_i386.deb 2007/03/20 23:21 EST [-] [verify] cache file verification FAILED for /var/cache/apt-proxy/debian/pool/main/v/valgrind/valgrind_3.2.1-1_i386.deb: dpkg failed 2007/03/20 23:21 EST [-] Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/twisted/internet/posixbase.py", line 250, in _disconnectSelectable selectable.readConnectionLost(f) File "/usr/lib/python2.4/site-packages/twisted/internet/abstract.py", line 157, in readConnectionLost self.connectionLost(reason) File "/usr/lib/python2.4/site-packages/twisted/internet/process.py", line 233, in connectionLost self.proc.childConnectionLost(self.name, reason) File "/usr/lib/python2.4/site-packages/twisted/internet/process.py", line 659, in childConnectionLost self.maybeCallProcessEnded() --- <exception caught here> --- File "/usr/lib/python2.4/site-packages/twisted/internet/process.py", line 688, in maybeCallProcessEnded self.proto.processEnded(failure.Failure(e)) File "/home/andrew/apt-proxy/apt-proxy/apt_proxy/cache.py", line 674, in processEnded self.parent.failed(os.path.basename(self.exe)+ " failed") File "/home/andrew/apt-proxy/apt-proxy/apt_proxy/cache.py", line 623, in failed os.unlink(self.path) exceptions.OSError: [Errno 2] No such file or directory: '/var/cache/apt-proxy/debian/pool/main/v/valgrind/valgrind_3.2.1-1_i386.deb' 2007/03/20 23:21 EST [Channel,215,192.168.1.23] [CacheEntry] this is a real request:/var/cache/apt-proxy/debian/pool/main/v/valgrind/valgrind_3.2.1-1_i386.deb 2007/03/20 23:21 EST [Channel,215,192.168.1.23] [CacheEntry] start download:pool/main/v/valgrind/valgrind_3.2.1-1_i386.deb 2007/03/20 23:21 EST [Channel,215,192.168.1.23] Starting factory <apt_proxy.fetchers.HttpFetcher instance at 0xb6ac3e2c> 2007/03/20 23:21 EST [Channel,215,192.168.1.23] Starting factory <twisted.protocols.policies.TimeoutFactory instance at 0xb6ac3e8c> 2007/03/20 23:21 EST [TimeoutProtocol,client] [CacheEntry] download started:/var/cache/apt-proxy/debian/pool/main/v/valgrind/valgrind_3.2.1-1_i386.deb 2007/03/20 23:29 EST [TimeoutProtocol,client] [CacheEntry] download_data_end: /var/cache/apt-proxy/debian/pool/main/v/valgrind/valgrind_3.2.1-1_i386.deb (1 clients) 2007/03/20 23:29 EST [TimeoutProtocol,client] [CacheEntry] file_sent:/var/cache/apt-proxy/debian/pool/main/v/valgrind/valgrind_3.2.1-1_i386.deb 2007/03/20 23:29 EST [TimeoutProtocol,client] Stopping factory <apt_proxy.fetchers.HttpFetcher instance at 0xb6ac3e2c> 2007/03/20 23:29 EST [TimeoutProtocol,client] Stopping factory <twisted.protocols.policies.TimeoutFactory instance at 0xb6ac3e8c> I am pulling debian-testing-i386-DVD-1.iso using jigdo-lite through apt-proxy. Jigdo-lite acts like a single threaded script and appears to use wget internally. valgrind_3.2.1-1_i386.deb was already in the cache. Comparison with a backup shows both copies are identical. At 23:20 the disk was in heavy use. (Daily backups backing up that disk + at least 2 other processes accessing that disk + an active swap partition). Load average was probably about 2.5, but could have been higher. My guess is that disk/processor contention caused file verification to stall, causing wget to timeout, leading to multiple requests, leading to breakage. By the way, is this version supposed to support access from multiple clients simultaneously? Thanks Andrew V. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]