"unsupported Unicode code range" error when branching kdelibs trunk

Bug #271076 reported by Ismail Onur Filiz
2
Affects Status Importance Assigned to Milestone
Bazaar Subversion Plugin
Fix Released
Undecided
Jelmer Vernooij

Bug Description

I am trying to checkout the kdelibs trunk from svn.kde.org using bzr 1.6.1, bzr-svn 0.4.12, python 2.5.2, subversion 1.5.1:

bzr co svn+ssh://svn.kde.org/home/kde/trunk/KDE/kdelibs

Nevertheless, it fails at the "fetching svn revision info" stage. With some debugging I found the culprit to be revision 723898 ( http://websvn.kde.org/?view=rev&revision=723898 ), where it looks like there might actually be an encoding problem in the commit message itself. I wanted to report it since I wasn't sure if some more robustness in bzr-svn is necessary, and/or whether there is a workaround for this particular case.

The backtrace is below.

Thanks.

------------------

bzr: ERROR: exceptions.UnicodeDecodeError: 'utf8' codec can't decode bytes in position 50-55: unsupported Unicode code range

Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 857, in run_bzr_catch_errors
    return run_bzr(argv)
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 797, in run_bzr
    ret = run(*run_argv)
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 499, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/usr/lib/python2.5/site-packages/bzrlib/builtins.py", line 937, in run
    branch_location)
  File "/usr/lib/python2.5/site-packages/bzrlib/bzrdir.py", line 879, in open_tree_or_branch
    return bzrdir._get_tree_branch()
  File "/usr/lib/python2.5/site-packages/bzrlib/bzrdir.py", line 864, in _get_tree_branch
    branch = self.open_branch()
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/remote.py", line 176, in open_branch
    branch = SvnBranch(repos, self.branch_path)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/branch.py", line 71, in __init__
    self.mapping = self.repository.get_mapping()
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/repository.py", line 328, in get_mapping
    self._default_mapping = get_default_mapping().from_repository(self, self._hinted_branch_path)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/mapping3/__init__.py", line 249, in from_repository
    (guessed_scheme, actual_scheme) = repository_guess_scheme(repository, last_revnum, _hinted_branch_path)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/mapping3/__init__.py", line 196, in repository_guess_scheme
    repository._log.iter_changes(None, last_revnum, max(0, last_revnum-SCHEME_GUESS_SAMPLE_SIZE), pb=pb), last_revnum, branch_path)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/mapping3/scheme.py", line 488, in guess_scheme_from_history
    for (revpaths, revnum, revprops) in changed_paths:
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/logwalker.py", line 310, in iter_changes
    self.fetch_revisions(max(from_revnum, to_revnum), pb=pb)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/logwalker.py", line 468, in fetch_revisions
    self.actual._transport.get_log(rcvr, [""], self.saved_revnum, to_revnum, 0, True, True, False, todo_revprops)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/transport.py", line 341, in get_log
    revprops)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/logwalker.py", line 453, in rcvr
    self.cache.insert_revprops(revision, revprops)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/logwalker.py", line 231, in insert_revprops
    self.insert_revprop(revision, k, v)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/logwalker.py", line 225, in insert_revprop
    self.cachedb.execute("replace into revprop (rev, name, value) values (?, ?, ?)", (rev, name.decode("utf-8"), value.decode("utf-8")))
  File "/usr/lib/python2.5/encodings/utf_8.py", line 16, in decode
    return codecs.utf_8_decode(input, errors, True)
UnicodeDecodeError: 'utf8' codec can't decode bytes in position 50-55: unsupported Unicode code range

bzr 1.6.1 on python 2.5.2 (linux2)
arguments: ['/usr/bin/bzr', 'co', 'svn+kde://svn.kde.org/home/kde/trunk/KDE/kdelibs', 'kdelibs-kdesvn']
encoding: 'ANSI_X3.4-1968', fsenc: 'ANSI_X3.4-1968', lang: None
plugins:
  bzrtools /usr/lib/python2.5/site-packages/bzrlib/plugins/bzrtools [1.6.0]
  launchpad /usr/lib/python2.5/site-packages/bzrlib/plugins/launchpad [unknown]
  svn /usr/lib/python2.5/site-packages/bzrlib/plugins/svn [0.4.12]

Jelmer Vernooij (jelmer)
Changed in bzr-svn:
assignee: nobody → jelmer
milestone: none → 0.5.0
status: New → Fix Committed
Jelmer Vernooij (jelmer)
Changed in bzr-svn:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.