[MERGE] Allow stacking for --dev6
andrew.bennetts at canonical.com
Tue May 12 03:17:41 BST 2009
John Arbash Meinel wrote:
> Now with the manual testing, I've run into a bug when accessing via
> bzr+ssh (it works fine with local access).
> I tracked it down to code trying to get the 'ghost' revisions from the
> stacked-on location. The specific issue is with:
> revisions = search.get_keys()
> This does:
> keys = [key for key, parents in graph.iter_ancestry(heads)
> if key != NULL_REVISION]
(Specifically, PendingAncestryResult's get_keys does this. SearchResult's
get_keys just has a pre-calculated list that it was constructed with.)
> However, that ignores the fact that 'iter_ancestry()' returns ghosts.
> You can find them by checking "parents is None".
Yes, I've been surprised by this too. I think it would be reasonable to add
“and parents is not None” to that filter. In fact I'm fairly sure I
considered doing that at one point, I can't remember why I didn't... perhaps
just because I didn't need to?
> I'm trying to understand what code is broken. My gut feeling is that
> "search.get_keys()" should not be returning the ghosts...
I think your gut is right.
More information about the bazaar