bazaar performance question

John Arbash Meinel john at arbash-meinel.com
Wed Dec 12 15:46:18 UTC 2012


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 2012-12-12 14:59, Frits Jalvingh wrote:
> Hi list, We have an automated tool which accepts branches from
> developers to be reviewed and ordered in a "change list". To keep
> branches together this tool needs to compare a new, incoming branch
> with the branches it already knows about, so that it can see if the
> new branch is a newer version of an existing change or is a
> completely new change.
> 
> To do this it does a lot of "bzr missing --include-merges"
> commands between branches. The problem I have is that each of these
> take 7 to 10 seconds, and that makes the total time to accept
> branches quite long.
> 
> So the question is: is there any way to speed up this process? I
> came across an old project called "historycache", but it aborts on
> the above command.
> 

Is it possible to script it internally? I can imagine that saving the
graph object and doing multiple missing checks in one process would
save a modest amount of time.

You can grab a "repository.get_graph()" object, and then make calls
about 'find_unique_ancestors' on the various branch tips. If you
re-use the graph object, that should do reasonably well.

The best plugin I have for these sorts of operations is
"lp:bzr-history-db". It has a couple of rough spots, but generally
I've seen it help quite a bit for 'bzr log' type operations. I don't
know if it is all hooked in for 'bzr missing' though.

John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (Cygwin)
Comment: Using GnuPG with undefined - http://www.enigmail.net/

iEYEARECAAYFAlDIpsoACgkQJdeBCYSNAAOy4wCeL4qkbTdzjfPbdaIoP09mPNDO
znEAn0yQ3mAu+StQlzX9IFP7ahUL9Uq/
=NnVT
-----END PGP SIGNATURE-----



More information about the bazaar mailing list