On Wed, 28 Jul 2010 17:39:17 +0200, Dominic Fandrey wrote: > On 28/07/2010 15:15, Marcin Wisnicki wrote: >> On Tue, 27 Jul 2010 21:03:21 -0700, perryh wrote: >> >>> Marcin Wisnicki <mwisnicki+free...@gmail.com> wrote: >>>> At this very moment, french package mirror has INDEX newer than in >>>> other mirrors: >>>> >>> ... >>>> >>>> yet it does not have those packages. >>>> >>>> How could something like this happen ? >>> >>> By being examined while a resync was in process: evidently the new >>> INDEX file had been transferred but that package file (and likely >>> others) were still in transit or perhaps not even started yet. >>> Mirroring is not an instantaneous process. >> >> Yeah that was it, but it is really, really bad. Mirroring must be >> atomic (mirror to temporary directory then rename). Otherwise there is >> a large window of time every couple of days when upgrading packages >> will at best fail or leave you with broken system. I did binary upgrade >> with pkg_upgrade yesterday and half of my system was linked against >> wrong libintl version :( > > The next version of pkg_upgrade will check every downloaded package > against the master server after completing the download. >
Great, I need this so much. Currently to really upgrade packages I must do something like: rm -rf /usr/ports/packages pkg_upgrade -af to make sure rebuilt packages are refetched. But it's obviously suboptimal. I think you could also detect inconsistent mirror by comparing modification time of package against mtime of INDEX. If pkg is newer than INDEX then it's a sign of incomplete sync. > I expect to release it at the end of September. > > Regards _______________________________________________ freebsd-ports@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-ports To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"