[MERGE/RFC] buffer_all for get_revision_graph() and get_ancestry()

John Arbash Meinel john at arbash-meinel.com
Fri Nov 30 21:33:19 GMT 2007


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

Robert Collins wrote:
> Robert Collins has voted reject.
> Status is now: Vetoed
> Comment:
> I think the immediate improvements we've got on a number of commands
> already shows the benefit to us of having our developers really
> dogfooding packs; and  the ease with which individual operations can be
> improved. I grant that this may be required for release branches; but I
> am still completely convinced that merging this to bzr.dev would be a
> mistake.
> 

While we might be able to get rid of calls to get_ancestry, log uses merge_sort
and that is defined on the whole graph.

So I think you are being premature about what we can and cannot fix easily.

If 20 commands are slowed down, and I fix 2, that still leaves 18 that can
benefit from something like this.

(Note also that plain get_revision_graph() is about 5x faster than
get_revisio_graph(revision) because it calls index.versions() which does call
buffer_all).

If you want to work out how to determine merged revisions without searching the
whole ancestry, you are welcome to do so. I think it is going to be hard, and
making bzr log and bzr uncommit slow just for that seems silly. (Uncommit could
probably be rewritten more easily since it just shows mainline revs.)

John
=:->

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFHUIGfJdeBCYSNAAMRAsBsAJ98BR9W0+u7rjzWzHiOSNEcdrN9DACgyKkk
Tmi6r4pvNk0VelymLl8sf8I=
=LSfS
-----END PGP SIGNATURE-----



More information about the bazaar mailing list