Branch.lock_read() rather expensive
Aaron Bentley
aaron.bentley at utoronto.ca
Sun Oct 16 01:42:13 BST 2005
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
John Arbash Meinel wrote:
> Aaron Bentley wrote:
>>revision_graph can be reimplemented in terms of the inventory weave, the
>>way is_ancestor is. I don't understand the weave API well enough to do
>>this.
>
>
> Well, having worked with the weaves, I know the private structures that
> would give you want you want. (_parent contains the integer parent ids,
> and lookup() can give you the number from a name _names has the name for
> a given integer).
>
> I was considering doing that as well, I just didn't know if it was
> appropriate to dive into the weave privates.
Martin certainly seemed to think that it was okay, and used it in fetch.py.
There is a security issue, though, because that data may come from
signed and unsigned sources.
> Also, you have MultipleRevisionSource, but really I think you want
> MultipleAncestorSource, or somesuch.
I don't understand what you mean. It unifies multiple revision sources
into a single one. They're not specifically ancestors.
>>node_distances could be memoized (well if we assume there are no ghost
>>revisions. We can invalidate the cache when a ghost has been fixed.)
>
>
> I don't know if people are doing changeset as a common operation. But if
> merge uses it as well, then it might be worth memoizing.
Yes, merge uses it, too.
Aaron
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFDUaHl0F+nu1YWqI0RAtqTAJ0VLmgqbwJOx3b0jXJhTMUmruD1XACgiAQ9
we/lpW+iy7OaB8AulOW1abI=
=wbPi
-----END PGP SIGNATURE-----
More information about the bazaar
mailing list