svn2bzr released

Jelmer Vernooij jelmer at samba.org
Fri Oct 7 01:27:47 BST 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi Gustavo,

Gustavo Niemeyer wrote:

>> Is there any way the speed of svn2bzr can be improved? It tried
>> converting the Samba repository, but it took me 6 hours to
>> convert the first 10 commits (out of ~11000 commits), whereas it
>> takes less then 10 hours total with tailor (remotely, but
>> converting just the main branch with 6000 commits).
>
>
> And how long it takes to convert all the repository with svn2bzr?

I don't know yet - running a full convert at the moment.

>
> Unlike tailor, svn2bzr will process the repository in two steps. It
> will first read information about the repository, and then will
> convert it. To compare the speed of svn2bzr with tailor, you must
> measure the whole procedure, not the number of commits at a given
> point. It's even worse if you compare it at *10* commits. :-)

The first step (Revision XX read) is quite fast and completes in just
a few minutes. The second step (committing to bzr) however is very
slow. The first 10 commits in the second step were taking about 4
hours. Is there any reason to expect the next 10090 commits will be
significantly faster then the first 10?

As I run tailor over a network connection and svn2bzr locally, I would
expect the latter to be at least a bit faster then the first.

Gustavo Niemeyer wrote:

>> Is there any way the speed of svn2bzr can be improved? It tried
>
>
> Ah, another hint: do not use compressed dumps. svn2bzr will take
> contents from the dump history on copies, so that you can convert
> part of a repository even if it copies data from places which are
> not being converted. That may become expensive on large compressed
> dumps.

How do I create uncompressed dumps? I'm currently just using the
output of 'svnadmin dump samba.repos'.

Also, when running with --scheme=trunk, I get the following error:

Traceback (most recent call last):
  File "./svn2bzr.py", line 938, in ?
    main()
  File "./svn2bzr.py", line 931, in main
    opts.prefix, opts.filter)
  File "./svn2bzr.py", line 866, in svn2bzr
    creator.run()
  File "./svn2bzr.py", line 367, in run
    self.copy_dir(copy_path, copy_revno, node_path)
  File "./svn2bzr.py", line 462, in copy_dir
    copy_branch(orig_branch, dest_abspath, revno)
  File "/usr/lib/python2.4/site-packages/bzrlib/clone.py", line 78, in
copy_branch
    history = _get_truncated_history(branch_from, revision)
  File "/usr/lib/python2.4/site-packages/bzrlib/clone.py", line 102,
in _get_truncated_history
    raise InvalidRevisionId('revision {%s} is not on the mainline of %s'
NameError: global name 'InvalidRevisionId' is not defined

I'll try to have a look at the source tomorrow and see if I can find
the cause of either of these problems.

Cheers,

Jelmer
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)

iD8DBQFDRcECPa9Uoh7vUnYRAnKpAKCUBrniS0wflBN9j9eTJIhQ7UHrbwCfZIks
gRP+6gz5ioPoQz7ftcnQ5T0=
=+urO
-----END PGP SIGNATURE-----





More information about the bazaar mailing list