Feedback on migration to bzr

Matthew East mdke at ubuntu.com
Tue Oct 30 10:43:02 GMT 2007


Hi there,

Michael Hudson asked me to send a quick report on the recent
experience I've had when migrating the Ubuntu Documentation Project
from svn to bzr.

A list of imported branches is here:

 https://code.launchpad.net/~ubuntu-core-doc

The experience was mainly positive but there have been a few hiccups
that I thought I'd share with the list. They are partly / mainly
Launchpad related so I'm copying launchpad-users in too.

Before I start I'd like to underline some of the positive aspects: I
had *really* good support from a number of different people on the irc
channel, which has meant that none of the hiccups below was a serious
problem. In particular: thanks to jam-laptop, lifeless, jelmer, and
mwhudson.

Ok, so the migration would have been smoother if the following issues
weren't there:

1. -sub-trees format issues. I used bzr-svn to import the repository,
and discovered that this uses this format by default which is not
supported by the default bzr shared repository. This means that:
(a) When I tried to download the new branches into a normal shared
repository I got an error message which I didn't understand - it
didn't specify the problem or reference any documentation at all.
(b) I was a little concerned initially when I found out that we were
using experimental functionality without being informed of this by the
relevant web pages in advance - subsequently I was reassured that the
format is unlikely to create issues for us.
(c) People wishing to download our branches into existing shared
repositories they have cannot do so.

Obviously I don't have the technical background to express an opinion
on whether this format should be used or not, but there definitely
should be a "bzr-wide" policy about this, rather than have bzr-svn use
it by default, and bzr not.

2. Being unable to browse the working tree via http. Obviously, this
is a basic functionality which svn does well. It was one of the
features we needed before considering the move to bzr. Unfortunately,
we are currently unable to do this because of this bug:

 https://bugs.launchpad.net/loggerhead/+bug/158584/

3. Wishlist - Launchpad doesn't support server-side shared
repositories. Because I had to import quite a lot of branches, most of
which share quite similar revision history, it would have been helpful
if Launchpad would provide this functionality. Part of the migration
was to split our svn trunk into 4 branches - ubuntu-hardy,
kubuntu-hardy, edubuntu-hardy and xubuntu-hardy. This involves
creating 4 branches with essentially identical revision history as so
takes up a lot of server-side disk space. I would have liked to do the
same for our svn branches (dapper, edgy, feisty and gutsy) but was
persuaded to avoid this because of the amount of disk space involved.
it would have been nice to have a Launchpad shared repository which
could have avoided this problem.

= Other feedback =

I like bzr a lot. However, it could be improved with:

* Better error messages - the python traceback messages are pretty
hard to understand and generally don't give any hints to the beginner
what the actual problem is.
* Better progress reporting - the progress bar is pretty inaccurate
when pushing and downloading branches. Without doing any detailed
analysis, we've tended to find that it starts at about 40%, stays
there for most of the download time, then skips to 100% pretty
quickly. Also, it's hard to understand what's going on with the 1/4
message on the right hand side of the progress bar. I haven't delved
into the bug list to see what is already there on this issue, but a
simple and single progress bar with an accurate percentage would be
helpful.

Finally, given that the whole point of this email is to highlight some
of the negatives, thanks again to everyone who has given quite a lot
of time to help me out, and the experience has generally been pretty
good.

-- 
Matthew East
http://www.mdke.org
gnupg pub 1024D/0E6B06FF



More information about the bazaar mailing list