Re: Bug#636292: MD5Sum mismatch is due to multiple DNS queries!
On Sun, Aug 07, 2011 at 05:26:40AM +0800, email@example.com wrote:
> >>>>> "KR" == Kurt Roeckx <firstname.lastname@example.org> writes:
> KR> Except that it's about 1000 files. This is basicly what rsync
> KR> --delay-updates does, and what is being used. And on a very busy
> KR> mirror this can actually take some time to do.
> Well all I know is the 998 .debs should be done first.
> Then the 1 index file and 1 checksum file second.
No, this is 1000 index files. Please note that we have more than 1
suite and more than 1 arch, and each of those have several files.
Just take a look at the Release file itself to know how many files
need to be updated at the same time.
The new .debs are done first, so that if you get a Packages or
Sources file, you can actually download the files mentioned in
those files. They are directly copied to the correct place since
they are new files and not updated files.
Then the Packages, Sources, Release and other files are first
all transfered, then moved to the correct place.
After that old files are removed. And ftp-master only removes
them after a few days that no Pacakges or Sources files mentions
The critical part is moving all the Packages/Sources/Release files
to the new place. You want to do that in as short a time as
The problem you're most likely seeing is that the InRelease file
is done together with copying the .deb files, while it should be
part of the Packages/Sources/Release files part. And I already
explained that part.
> And that second step being as atomic as $ ln a b staging_area
But also note that an atomic update on the server side doesn't
help. If I start downloading the Release file, and while I'm
downloading the Release files the Release/Packages files are
updated on the server, and then download a Packages file, the
Packages and Release file still won't be from the same time.