[MERGE] stop fetching ghosts over the smart server
Andrew Bennetts
andrew at canonical.com
Fri Jan 11 07:16:20 GMT 2008
Robert Collins wrote:
> This stops fetching ghosts over the smart server by honouring the
> find_ghosts flag of fetch(), which was not being passed around
> sufficiently well.
>
> Its almost certainly faster as the graph implementation for packs will
> do partial index loading; coming up a native graph implementation for
> the smart server.
bb:tweak
[...]
> + if next_revs - have_revs == set([revision_id]):
> + # we saw the start rev itself, but no parents from it (or
> + # next_revs would have been updated to e.g. set(). We remove
> + # have_revs because if we found revision_id locally we
> + # stop_searching at the first time around.
> + raise errors.NoSuchRevision(self.source, revision_id)
For some reason I find the logic and explanation of this if block here hard to
follow. Perhaps it's just because it's Friday afternoon and I'm a bit slow, but
can you maybe explain this more clearly? It might be because I'm not very
familiar with the graph searching APIs.
My only other comment is that I'm slightly surprised that there is no test for
this flag.
Basically this looks pretty clean though.
-Andrew.
More information about the bazaar
mailing list