'branches' questions.

John Meinel john at arbash-meinel.com
Tue Jul 24 23:51:02 UTC 2012


As implemented today, 'bzr branches' is evaluated 'client side' by reading
the filesystem and walking over it. It would certainly be possible to hangs
it into an RPC call, it was just never done. We could certainly give you
pointers on how to do it, and it could even he implemented in a plugin if
you needed support on older versions of bzr.

John
=:->
On Jul 24, 2012 6:28 PM, "Bosco Rama" <bzr at boscorama.com> wrote:

> Hi,
>
> We have a relatively simple centralized main-line that consists
> of a single shared-repo of about 500MB.  The structure resembles
> the following:
>     repo               (bzr init-repo --no-trees)
>     +- proj1           (bzr init --no-tree --append-revisions-only)
>     +- proj2           (bzr init --no-tree --append-revisions-only)
>     +- proj3           (bzr init --no-tree --append-revisions-only)
>     +- proj4           (bzr init --no-tree --append-revisions-only)
>     +- tools
>        +- tool1        (bzr init --no-tree --append-revisions-only)
>        +- tool2        (bzr init --no-tree --append-revisions-only)
>        +- tool3        (bzr init --no-tree --append-revisions-only)
>        +- tool4        (bzr init --no-tree --append-revisions-only)
>
> In addition to our devs we have a 'backup' process that is implemented
> as a user (don't ask) that needs to be able to find new branches and
> add them to its local repo.
>
> The first thing we noticed is that 'bzr branches repo' doesn't return
> the top-level branches as we expected.  Maybe we misunderstand what the
> command is meant to do.
>
> We've also come up against a performance issue with the 'branches' command
> when run over SSH remotely.  We tested within the dir, ssh to localhost
> and from a remote site.  Here are the timings (averaged over 3 runnings):
>
> Within repo dir:
> $ time bzr branches -R repo >/dev/null
> real    0m1.077s
> user    0m0.960s
> sys     0m0.060s
>
> SSH on same host/LAN:
> $ time bzr branches -R bzr+ssh://bzr@localhost/repo >/dev/null
> real    0m3.806s
> user    0m1.380s
> sys     0m0.050s
>
> SSH from remote host (avg ping ~40ms):
> $ time bzr branches -R bzr+ssh://bzr@remote-svr/repo >/dev/null
> real    0m53.457s
> user    0m0.670s
> sys     0m0.210s
>
> It seems like a rather large factor increase for what we thought would
> be a relatively low consumption operation.  We can only assume that the
> command is actually transferring structural data of some sort instead of
> having the server-side perform the operation and return the results.  It
> also seems to adversely affect qbzr.  Is there anything we can do on our
> end to speed this operation up?
>
> Any help understanding these would be greatly appreciated.
>
> (BTW, this is using BZR 2.5.1 on Lucid).
>
> TIA.
>
> Bosco.
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/bazaar/attachments/20120725/5b39288f/attachment.html>


More information about the bazaar mailing list