Subversion plugin interferes with push to sftp locations

Bug #67281 reported by James Henstridge
14
Affects Status Importance Assigned to Milestone
Bazaar Subversion Plugin
Fix Released
Undecided
Jelmer Vernooij

Bug Description

I was trying to push a branch to sftp;//bazaar.launchpad.net and got a weird error I hadn't seen before. Looking at the traceback in ~/.bzr.log, it seems that it was caused by the bzr-svn plugin. Here is the relevant traceback:

created control directory in sftp://bazaar.launchpad.net/%7Ejamesh/%2Bjunk/gnome-vfs-obex-method/
Traceback (most recent call last):
  File "/usr/lib/python2.4/site-packages/bzrlib/commands.py", line 611, in run_bzr_catch_errors
    return run_bzr(argv)
  File "/usr/lib/python2.4/site-packages/bzrlib/commands.py", line 573, in run_bzr
    ret = run(*run_argv)
  File "/usr/lib/python2.4/site-packages/bzrlib/commands.py", line 282, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/usr/lib/python2.4/site-packages/bzrlib/builtins.py", line 623, in run
    revision_id=br_from.last_revision())
  File "/usr/lib/python2.4/site-packages/bzrlib/bzrdir.py", line 138, in clone
    result_repo = result.find_repository()
  File "/usr/lib/python2.4/site-packages/bzrlib/bzrdir.py", line 359, in find_repository
    found_bzrdir = BzrDir.open_containing_from_transport(
  File "/usr/lib/python2.4/site-packages/bzrlib/bzrdir.py", line 526, in open_containing_from_transport
    result = BzrDir.open_from_transport(a_transport)
  File "/usr/lib/python2.4/site-packages/bzrlib/bzrdir.py", line 486, in open_from_transport
    return format.open(transport, _found=True)
  File "/usr/lib/python2.4/site-packages/bzrlib/bzrdir.py", line 1131, in open
    return self._open(transport)
  File "/home/james/.bazaar/plugins/bzr-svn/checkout.py", line 551, in _open
    return SvnCheckout(transport, self)
  File "/home/james/.bazaar/plugins/bzr-svn/checkout.py", line 471, in __init__
    self.local_path = transport.local_abspath(".")
  File "/usr/lib/python2.4/site-packages/bzrlib/transport/__init__.py", line 386, in local_abspath
    raise errors.TransportNotPossible('This is not a LocalTransport,'
TransportNotPossible: Transport operation not possible: This is not a LocalTransport, so there is no local representation for a path %

This was with r229 of bzr-svn and the bzr-0.11-0ubuntu1 package.

Revision history for this message
James Henstridge (jamesh) wrote :

In case it isn't obvious from the traceback above, the directory on bazaar.launchpad.net didn't previously exist, which is probably why the bzr-svn control dir check is being invoked.

I guess there should be some check in the bzr-svn code to ensure it is working with a local transport instance first.

Revision history for this message
Colin Watson (cjwatson) wrote :

I just saw the same thing. In order to recover, I had to clean up .bzr on the supermirror via sftp by hand, then manually hack the bzr sftp transport not to object to mkdir-ing a directory that already existed. Pretty horrible.

creating directory sftp://bazaar.launchpad.net/%7Eubuntu-core-dev/cdebconf/ubuntu/ => ubuntu
created control directory in sftp://bazaar.launchpad.net/%7Eubuntu-core-dev/cdebconf/ubuntu/
Traceback (most recent call last):
  File "/usr/lib/python2.4/site-packages/bzrlib/commands.py", line 611, in run_bzr_catch_errors
    return run_bzr(argv)
  File "/usr/lib/python2.4/site-packages/bzrlib/commands.py", line 573, in run_bzr
    ret = run(*run_argv)
  File "/usr/lib/python2.4/site-packages/bzrlib/commands.py", line 282, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/usr/lib/python2.4/site-packages/bzrlib/builtins.py", line 623, in run
    revision_id=br_from.last_revision())
  File "/usr/lib/python2.4/site-packages/bzrlib/bzrdir.py", line 138, in clone
    result_repo = result.find_repository()
  File "/usr/lib/python2.4/site-packages/bzrlib/bzrdir.py", line 359, in find_repository
    found_bzrdir = BzrDir.open_containing_from_transport(
  File "/usr/lib/python2.4/site-packages/bzrlib/bzrdir.py", line 526, in open_containing_from_transport
    result = BzrDir.open_from_transport(a_transport)
  File "/usr/lib/python2.4/site-packages/bzrlib/bzrdir.py", line 486, in open_from_transport
    return format.open(transport, _found=True)
  File "/usr/lib/python2.4/site-packages/bzrlib/bzrdir.py", line 1131, in open
    return self._open(transport)
  File "/usr/lib/python2.4/site-packages/bzrlib/plugins/svn/checkout.py", line 550, in _open
    return SvnCheckout(transport, self)
  File "/usr/lib/python2.4/site-packages/bzrlib/plugins/svn/checkout.py", line 470, in __init__
    self.local_path = transport.local_abspath(".")
  File "/usr/lib/python2.4/site-packages/bzrlib/transport/__init__.py", line 386, in local_abspath
    raise errors.TransportNotPossible('This is not a LocalTransport,'
TransportNotPossible: Transport operation not possible: This is not a LocalTransport, so there is no local representation for a path

Changed in bzr-svn:
status: Unconfirmed → Confirmed
Jelmer Vernooij (jelmer)
Changed in bzr-svn:
assignee: nobody → jelmer
Jelmer Vernooij (jelmer)
Changed in bzr-svn:
status: Confirmed → 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.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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