Re: Debian's problems, Debian's future
Adam Majer wrote:
> On Wed, Mar 27, 2002 at 01:53:00PM +0100, Eduard Bloch wrote:
> > 1) Large packages files
> > [... 3 level idea ...]
> I would suggest a solution that is much easier to manage. That is, packages
> should be sorted according to the date that the package was modified.
> This could be accompished with adding "Last Update" field to
> Packages that would indicate when the package is installed.
> This way, we could implement a partial update for Packages by the server
> simply parsing the "cream" from the top of the milk :) This would make
> fetching Packages a lot faster.
> This would require a small CGI on the server that would support this type
> of fetch, but it could save a lot of bandwidth for the server and for
> the user.
Here's how to make it possible without a CGI script; just support for
fetching the last bit of a file.
If you don't store the last update times in the Pacakges file, you can
download just the last-update info, which should be a lot smaller than the
packages file. Once you have this info, you know which part of the Packages
file is the same as the one on the server. Then, you fetch from that point
to the end of the server's file.
You can make the dates file small by storing the dates only to the day
accuracy, maybe as 32bit ints instead of text, or something. It should be
pretty small after gzipping. (high accuracy dates aren't needed because not
many packages are updated in a day, and downloading a few extra package
descriptions is no problem.)
I think this all works :) The only hard part is finding the right offset
in a gzipped file given that you know how much of the begging of two
uncompressed files match.
#define X(x,y) x##y
Peter Cordes ; e-mail: X(email@example.com. , ns.ca)
"The gods confound the man who first found out how to distinguish the hours!
Confound him, too, who in this place set up a sundial, to cut and hack
my day so wretchedly into small pieces!" -- Plautus, 200 BCE
To UNSUBSCRIBE, email to firstname.lastname@example.org
with a subject of "unsubscribe". Trouble? Contact email@example.com