>>>>> "Neil" == Neil Williams <[email protected]> writes:
>> A version mismatch will occur exacty when a mirror update ocurred in >> between the download of sources.bz2 and packages.bz2. You want to >> tell me that this is not possible, however your description of the >> process makes it look like it is possible, though unlikely. > How? apt opens the sockets and then starts the download. If the file > changes, the download will abort. Both sockets are open before the > download starts. Therefore, if the files download successfully, the > files must be in the same state as when the sockets were originally > opened. Are you trying to say that files change in the microsecond > between the creation of one socket and the creation of the next socket > on a multi-core server?? [..] > Which, apart from the time which elapses between the opening of one > socket and the opening of the next is already implemented. Maybe if *I* ran a multi-core server and sit on the same LAN as debian's mirror, opening of two sockets would be nearly synchronous and happen in a "microsecond". However, I'm pretty far away from the server, the 3-way handshake to open a socket can vary a lot in its timing depending on latencies and packet error rate. With a realistic socket setup jitter of 100ms and one mirror update per day, you'll fetch the wrong index file once in about 10^6 downloads. Relying on uncontrollable network parameters for avoiding races sounds like a bad idea to me. Betting on non-deterministic software to function, because malfunctioning looks unlikely, is not the best idea as well. cheers, David -- GnuPG public key: http://dvdkhlng.users.sourceforge.net/dk.gpg Fingerprint: B17A DC95 D293 657B 4205 D016 7DEF 5323 C174 7D40
pgpq7Xyocaa79.pgp
Description: PGP signature

