Robert Collins wrote: > On Sun, 2004-07-04 at 05:54, Thiemo Seufer wrote: > > > This way, broken systems will cause slightly higher load on the mirror > > for their first update. Further updates will be optimized. We can even > > completely avoid using the local clock if we want. > > I would not trust client clocks at all. Have the client logic look at > the server datestamp of the downloaded file (which as you note probably > should be embedded in it to handle esoteric transfer mechanisms) in > order to determine which 'date' it is on. We don't really need a date, that's just the most obvious way to get an unique mirror update ID. With some plans of more frequent mirror updates floating around, we should probably choose an ID scheme as it is in use for DNS zone file updates. > Also in the 'cdiff' file include the file sizes of: > Packages.gz > each delta. > > Then the client can trivially choose the most bw efficient way to > receive the update. No need for that one, if deltas larger than the original are simply not created on the server. AFAICS the index file should look like this: 20040703001 Packages.gz 20040702001 Packages-cdiff-20040702001.gz 20040701001 Packages-cdiff-20040701001.gz 20040630001 Packages-cdiff-20040630001.gz 20040629001 Packages-cdiff-20040629001.gz ... with an cutoff based on cdiff size and age. That's some redundancy, but it simplifies processing. And apt-get doesn't have to make assumptions about the server's update frequency, clocks, timezones, etc. Thiemo
Attachment:
signature.asc
Description: Digital signature