From owner-freebsd-arch Thu Jan 31 9:26:20 2002 Delivered-To: freebsd-arch@freebsd.org Received: from wall.polstra.com (wall-gw.polstra.com [206.213.73.130]) by hub.freebsd.org (Postfix) with ESMTP id 5EF9B37B417 for ; Thu, 31 Jan 2002 09:26:12 -0800 (PST) Received: from vashon.polstra.com (vashon.polstra.com [206.213.73.13]) by wall.polstra.com (8.11.3/8.11.3) with ESMTP id g0VHQ9M19110; Thu, 31 Jan 2002 09:26:09 -0800 (PST) (envelope-from jdp@wall.polstra.com) Received: (from jdp@localhost) by vashon.polstra.com (8.11.6/8.11.0) id g0VHQ9701193; Thu, 31 Jan 2002 09:26:09 -0800 (PST) (envelope-from jdp) Date: Thu, 31 Jan 2002 09:26:09 -0800 (PST) Message-Id: <200201311726.g0VHQ9701193@vashon.polstra.com> To: arch@freebsd.org From: John Polstra Cc: sheldonh@starjuice.net Subject: Re: Adding support for a global src tree serial number In-Reply-To: <79909.1012481992@axl.seasidesoftware.co.za> References: <79909.1012481992@axl.seasidesoftware.co.za> Organization: Polstra & Co., Seattle, WA Sender: owner-freebsd-arch@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG In article <79909.1012481992@axl.seasidesoftware.co.za>, Sheldon Hearn wrote: > > I didn't realize that cvsup mirrors might offer me a src/bin that's > newer than the src/sbin that it offers me (for example). Yes, that's what would happen, except most likely in reverse. CVSup processes the tree in alphabetical order. But I object to this idea for a different reason. Every day a large number of commits are made to the src tree. You are proposing that every one of those commits would add a delta to the serial number file. That file would soon have tens of thousands of deltas. That makes it quite inefficient for both cvs and CVSup. This idea simply doesn't scale to the long-term. If you want a serial number file, I wouldn't mind if it got a commit, say, once a week or maybe even once a day. But to do it on every change to the src tree is overkill. CVSup already grabs a timestamp from the server when it begins to update each new collection. In my copious spare time I am working on making this timestamp propagate through multiple levels of mirrors so it will be available to clients. CVSup could store that timestamp somewhere for future reference. I could also make it get a timestamp at the _end_ of each collection. Then each user would receive a fairly narrow time window (one minute or so) with a guarantee that all file versions came from within that window. That seems like a much more reasonable solution than an ever-growing serial number file. John PS - I changed the from address because I don't want to be on the cc of a long thread. Don't add me back. I'll read this stuff in freebsd-arch. And don't lecture me about procmail, because I know exactly what I'm doing. :-) -- John Polstra John D. Polstra & Co., Inc. Seattle, Washington USA "Disappointment is a good sign of basic intelligence." -- Chögyam Trungpa To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message