Imminent MERGE request: 12 steps towards a high performance server

Andrew Bennetts andrew at
Thu Sep 14 07:25:36 BST 2006

On Wed, Sep 13, 2006 at 11:55:34AM -0500, John Arbash Meinel wrote:
> >
> >      fix, with test, to how make_branch_and_tree makes workingtrees
> Since you have already created the branch on the transport at this
> point, it would make sense to create a local lightweight checkout.
> Though you can't do that if the transport *is* disk-backed, since that
> would try to create a lightweight checkout in the same directory as the
> existing branch (and the BranchReference would be effectively referring
> to itself).
> The code that you wrote still assumes that the transport is disk backed.
> From what I can tell, the only real change is that you don't require
> WorkingTreeFormat2 to be the default tree format. Is there another
> actual change that I'm missing?
> So I'm okay with the change, as long as you can explain what the change
> really is.

This code path wasn't being tested or used before.  When the default transport
for a test is not local, we want make_branch_and_tree to fallback to the on-disk
location (e.g. we can't make a workingtree over SFTP, so we instead put it
directly on the local location being served over SFTP).  IIRC, this wasn't
working before this change.

And we want that workingtree to be in a format appropriate for the format of the
bzrdir in that location, rather than hard-coded.


More information about the bazaar mailing list