Further hg convert (bazaar) woes

A. S. Budden abudden at gmail.com
Mon Feb 6 12:56:13 UTC 2012


Dear all,

My attempts at converting a number of Bazaar repositories to Mercurial
have generally gone very well, but I've had a couple of slightly more
obscure problems with a small number of repositories.  Unfortunately,
I suspect it will be a little harder than the previous issues to
produce a minimal example that reproduces the problem, so I'm hoping
someone can offer some advice on how to investigate the problems.

There are basically three error messages I get, depending on the
repository; these are listed below (under headings 1:, 2: and 3:).

Can anyone suggest how I might go about debugging these or producing a
minimal example that exhibits the problem?

Thanks in advance,

Al



1: Case folding (1 repository exhibits this):

After converting the repository, try to clone that repository:

    updating to branch default
    abort: case-folding collision between path/to/file/filename.h and
path/to/file/FILENAME.H

If I transfer the repository to a Linux machine, it seems to work
okay, but unfortunately that doesn't help me: if I transfer it back to
a Windows machine I get the case folding collisions again.




2: Unknown revision revspec (3 repositories exhibit this):

** unknown exception encountered, please report by visiting
**  http://mercurial.selenic.com/wiki/BugTracker
** Python 2.6.5 (r265:79063, Jun 12 2010, 17:07:01) [GCC 4.3.4
20090804 (release) 1]
** Mercurial Distributed SCM (version 1.9.3)
** Extensions loaded: color, graphlog, progress, convert, extdiff,
purge, record, fetch, schemes, hgk, rebase
Traceback (most recent call last):
  File "/usr/bin/hg", line 38, in <module>
    mercurial.dispatch.run()
  File "/usr/lib/python2.6/site-packages/mercurial/dispatch.py", line 27, in run
    sys.exit(dispatch(request(sys.argv[1:])))
  File "/usr/lib/python2.6/site-packages/mercurial/dispatch.py", line
64, in dispatch
    return _runcatch(req)
  File "/usr/lib/python2.6/site-packages/mercurial/dispatch.py", line
87, in _runcatch
    return _dispatch(req)
  File "/usr/lib/python2.6/site-packages/mercurial/dispatch.py", line
688, in _dispatch
    cmdpats, cmdoptions)
  File "/usr/lib/python2.6/site-packages/mercurial/dispatch.py", line
463, in runcommand
    ret = _runcommand(ui, options, cmd, d)
  File "/usr/lib/python2.6/site-packages/mercurial/extensions.py",
line 182, in wrap
    return wrapper(origfn, *args, **kwargs)
  File "/usr/lib/python2.6/site-packages/hgext/color.py", line 368, in colorcmd
    return orig(ui_, opts, cmd, cmdfunc)
  File "/usr/lib/python2.6/site-packages/mercurial/dispatch.py", line
742, in _runcommand
    return checkargs()
  File "/usr/lib/python2.6/site-packages/mercurial/dispatch.py", line
696, in checkargs
    return cmdfunc()
  File "/usr/lib/python2.6/site-packages/mercurial/dispatch.py", line
685, in <lambda>
    d = lambda: util.checksignature(func)(ui, *args, **cmdoptions)
  File "/usr/lib/python2.6/site-packages/mercurial/util.py", line 389, in check
    return func(*args, **kwargs)
  File "/usr/lib/python2.6/site-packages/hgext/convert/__init__.py",
line 269, in convert
    return convcmd.convert(ui, src, dest, revmapfile, **opts)
  File "/usr/lib/python2.6/site-packages/hgext/convert/convcmd.py",
line 445, in convert
    c.convert(sortmode)
  File "/usr/lib/python2.6/site-packages/hgext/convert/convcmd.py",
line 342, in convert
    parents = self.walktree(heads)
  File "/usr/lib/python2.6/site-packages/hgext/convert/convcmd.py",
line 136, in walktree
    commit = self.cachecommit(n)
  File "/usr/lib/python2.6/site-packages/hgext/convert/convcmd.py",
line 295, in cachecommit
    commit = self.source.getcommit(rev)
  File "/usr/lib/python2.6/site-packages/hgext/convert/bzr.py", line
142, in getcommit
    rev = self.sourcerepo.get_revision(version)
  File "<string>", line 4, in get_revision_read_locked
  File "/usr/lib/python2.6/site-packages/bzrlib/repository.py", line
845, in get_revision
    return self.get_revisions([revision_id])[0]
  File "<string>", line 4, in get_revisions_read_locked
  File "/usr/lib/python2.6/site-packages/bzrlib/vf_repository.py",
line 1335, in get_revisions
    return self._get_revisions(revision_ids)
  File "<string>", line 4, in _get_revisions_read_locked
  File "/usr/lib/python2.6/site-packages/bzrlib/vf_repository.py",
line 1343, in _get_revisions
    raise errors.NoSuchRevision(self, revid)
bzrlib.errors.NoSuchRevision:
CHKInventoryRepository('file:///path/to/project/.bzr/repository/') has
no revision user.name at domain.com-20110228152419-ipjogac4kpzjcmba

If I use the old version (before it was updated to convert
repositories rather than branches), it seems to work okay (except that
I'm only able to convert one branch obviously).




3: Unknown revision null (1 repository exhibits this):

This one I've managed to reproduce, so I've reported it as issue 3251:
http://mercurial.selenic.com/bts/issue3251



More information about the Mercurial mailing list