From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Stephen J. Turnbull" Newsgroups: gmane.emacs.devel Subject: Re: Emacs Bazaar repository Date: Fri, 14 Mar 2008 14:36:21 +0900 Message-ID: <873aqtuasq.fsf@uwakimon.sk.tsukuba.ac.jp> References: <87skyvse7k.fsf@xmission.com> <87fxuvl0gi.fsf@offby1.atm01.sea.blarg.net> <87bq5j19ok.fsf@workhorse.earlhome> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1205472503 12432 80.91.229.12 (14 Mar 2008 05:28:23 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 14 Mar 2008 05:28:23 +0000 (UTC) Cc: Jonathan Lange , Jason Earl , emacs-devel@gnu.org To: "Martin Pool" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Mar 14 06:28:49 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1Ja2TG-0007iw-F3 for ged-emacs-devel@m.gmane.org; Fri, 14 Mar 2008 06:28:46 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ja2Sh-00089K-3C for ged-emacs-devel@m.gmane.org; Fri, 14 Mar 2008 01:28:11 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ja2Sc-000894-9r for emacs-devel@gnu.org; Fri, 14 Mar 2008 01:28:06 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ja2Sb-00088o-Fq for emacs-devel@gnu.org; Fri, 14 Mar 2008 01:28:05 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ja2Sb-00088l-B1 for emacs-devel@gnu.org; Fri, 14 Mar 2008 01:28:05 -0400 Original-Received: from mtps01.sk.tsukuba.ac.jp ([130.158.97.223]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ja2Sa-0001JG-NP for emacs-devel@gnu.org; Fri, 14 Mar 2008 01:28:05 -0400 Original-Received: from uwakimon.sk.tsukuba.ac.jp (uwakimon.sk.tsukuba.ac.jp [130.158.99.156]) by mtps01.sk.tsukuba.ac.jp (Postfix) with ESMTP id 6E9671535A8; Fri, 14 Mar 2008 14:28:00 +0900 (JST) Original-Received: by uwakimon.sk.tsukuba.ac.jp (Postfix, from userid 1000) id 5A08811EFFC; Fri, 14 Mar 2008 14:36:21 +0900 (JST) In-Reply-To: X-Mailer: VM 7.19 under 21.5 (beta28) "fuki" 2785829fe37c XEmacs Lucid X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:92486 Archived-At: Martin Pool writes: > I believe the main problem is that we are processing the whole graph > to work out which revisions merged which others. What does this mean? That you can avoid pulling patches that cause conflicts if they've already been applied? But that's not terribly interesting in most logging or mass download applications. While I quoted Hoare on the root of all evil elsewhere, and continue to take that as my default position, these numbers are uncomfortable. I don't care how cold the CPU cache is, I don't want an attempt to access a non-existent local repo to take 10s. Nor should a disk-to-disk copy of a 400MB directory tree take 23.5m. The partial clone times are heartening, although it's hard to guess what they mean in terms of throughput. # Initial one-branch clone. $ time bzr clone http://bzr.notengoamigos.org/emacs/trunk/ earl-bzr Branched 87515 revision(s). real 101m35.490s user 28m16.698s sys 2m7.827s # Clone from a local standalone branch into a shared repo. $ time bzr clone ../earl-bzr trunk Branched 87515 revision(s). real 23m27.626s user 13m57.869s sys 1m12.516s # Command line typo on a local URL, bzr figures it out in 10s. $ time bzr branch EMACS_22_BASE bzr: ERROR: Not a branch: "/Users/steve/Software/Emacs/emacs-bzr/EMACS_22_BASE/". real 0m10.183s user 0m0.457s sys 0m1.361s # Command line typo on a remote URL, bzr figures it out in 3.5s. $ time bzr clone http://bzr.notengoamigos.org/emacs/EMACS_22_BASE bzr: ERROR: Not a branch: "http://bzr.notengoamigos.org/emacs/EMACS_22_BASE/". real 0m3.427s user 0m0.499s sys 0m1.142s # Command line typo on a remote URL, bzr figures it out in 2s. $ time bzr clone http://bzr.notengoamigos.org/emacs/branch/EMACS_22_BASE bzr: ERROR: Not a branch: "http://bzr.notengoamigos.org/emacs/branch/EMACS_22_BASE/". real 0m1.777s user 0m0.480s sys 0m0.995s # A partial clone into the shared repo. $ time bzr clone http://bzr.notengoamigos.org/emacs/branches/EMACS_22_BASE Branched 83329 revision(s). real 4m47.853s user 2m20.361s sys 0m25.168s # A second partial clone into the shared repo. $ time bzr clone http://bzr.notengoamigos.org/emacs/branches/lexbind Branched 48705 revision(s). real 11m18.166s user 3m25.059s sys 0m33.614s