From owner-freebsd-ports@FreeBSD.ORG Wed Jul 28 13:15:53 2010 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1E44D106566C for ; Wed, 28 Jul 2010 13:15:53 +0000 (UTC) (envelope-from freebsd-ports@m.gmane.org) Received: from lo.gmane.org (lo.gmane.org [80.91.229.12]) by mx1.freebsd.org (Postfix) with ESMTP id CD29C8FC08 for ; Wed, 28 Jul 2010 13:15:52 +0000 (UTC) Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1Oe6UB-0002wB-S3 for freebsd-ports@freebsd.org; Wed, 28 Jul 2010 15:15:51 +0200 Received: from static-78-8-147-77.ssp.dialog.net.pl ([78.8.147.77]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 28 Jul 2010 15:15:51 +0200 Received: from mwisnicki+freebsd by static-78-8-147-77.ssp.dialog.net.pl with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 28 Jul 2010 15:15:51 +0200 X-Injected-Via-Gmane: http://gmane.org/ To: freebsd-ports@freebsd.org From: Marcin Wisnicki Date: Wed, 28 Jul 2010 13:15:42 +0000 (UTC) Lines: 27 Message-ID: References: <4c4fac09.Kkzz6V/G5TxaiQAZ%perryh@pluto.rain.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: static-78-8-147-77.ssp.dialog.net.pl User-Agent: Pan/0.132 (Waxed in Black) Subject: Re: Strange contents on some ftp mirrors X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 28 Jul 2010 13:15:53 -0000 On Tue, 27 Jul 2010 21:03:21 -0700, perryh wrote: > Marcin Wisnicki 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 :( In fact atomic mirroring will not fix it completely, you must keep older versions of packages for at least a few hours after mirroring so anyone that started before mirroring was "commited" will have a chance to finish.