[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnu-arch-users] [BUG] tla cat-archive-log downloads .listing files

From: Aaron Bentley
Subject: Re: [Gnu-arch-users] [BUG] tla cat-archive-log downloads .listing files unnecessarily
Date: Wed, 08 Sep 2004 08:47:11 -0400
User-agent: Mozilla Thunderbird 0.5 (X11/20040309)

Since tla has no exception handling mechanism, the only way to prevent http 404/IO_PANIC etc. messages from being displayed is to verify that user-supplied revision names actually exist before attempting to use them.

Matthieu Moy wrote:
It seems that tla downloads unnecessary .listing files when running

$ strace tla cat-archive-log
address@hidden/xtla--jet--0.2--patch-100 | & grep GET
fcntl64(3, F_GETFD)                     = 0

This part looks like the initial connection setup:
write(3, "GET /arch/xtla/.listing HTTP/1.1"..., 134) = 134
write(3, "GET /arch/xtla/.listing HTTP/1.1"..., 134) = 134
write(3, "GET /arch/xtla/=meta-info/mirror"..., 143) = 143
write(3, "GET /arch/xtla/=meta-info/name H"..., 141) = 141
write(3, "GET /arch/xtla/=meta-info/http-b"..., 147) = 147
write(3, "GET /arch/xtla/=meta-info/signed"..., 151) = 151

What version of tla is this? It looks like earlier than 1.2.1. 1.2.1 and later shoul be a bit better than this.,

Make sure the category  exists
write(3, "GET /arch/xtla/.listing HTTP/1.1"..., 134) = 134
write(3, "GET /arch/xtla/.listing HTTP/1.1"..., 134) = 134

make sure the branch exists
write(3, "GET /arch/xtla/xtla/.listing HTT"..., 139) = 139
write(3, "GET /arch/xtla/xtla/xtla--jet/.l"..., 149) = 149

make sure the version exists
write(3, "GET /arch/xtla/.listing HTTP/1.1"..., 134) = 134
write(3, "GET /arch/xtla/xtla/xtla--jet/xt"..., 174) = 174
write(3, "GET /arch/xtla/xtla/xtla--jet/xt"..., 174) = 174
write(3, "GET /arch/xtla/xtla/xtla--jet/xt"..., 183) = 183
write(3, "GET /arch/xtla/xtla/xtla--jet/xt"..., 169) = 169

tla knows exactly the location of the file.  One single GET should be
sufficient here. (possibly followed by others in case of failure, to
get the diagnosis)

Since tla has no (yet) HTTP pipelining, this results in a considerable
performance loss: tla cat-archive-log takes 5 seconds to execute where
a wget on the right URL takes only 0.60 seconds!

If you screw up the URL, wget can only tell you 404. Arch will tell you whether the revision, version, category or branch was wrong.

Aaron Bentley
Director of Technology
Panometrics, Inc.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]