bzr crashes on push to ftp site

Bug #409507 reported by Peter Liepa
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Bazaar
New
Undecided
Unassigned

Bug Description

I set up a trivial local repo with a single file using bzr init, then tried pushing it to my webhost.

The command and dumps follow:

~/Documents/bzr_brainjam:bzr push ftp://<email address hidden>/test
FTP <email address hidden> password:
FTP temporary error: 451 /test/.bzr/repository/upload/o9z40ltbz1nwfheofmhm.pack: Append/Restart not permitted, try again. Retrying.
FTP temporary error: 451 /test/.bzr/repository/upload/o9z40ltbz1nwfheofmhm.pack: Append/Restart not permitted, try again. Retrying.
bzr: ERROR: exceptions.EOFError:

Traceback (most recent call last):
  File "/Library/Python/2.5/site-packages/bzrlib/commands.py", line 835, in exception_to_return_code
    return the_callable(*args, **kwargs)
  File "/Library/Python/2.5/site-packages/bzrlib/commands.py", line 1030, in run_bzr
    ret = run(*run_argv)
  File "/Library/Python/2.5/site-packages/bzrlib/commands.py", line 647, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/Library/Python/2.5/site-packages/bzrlib/builtins.py", line 1161, in run
    use_existing_dir=use_existing_dir)
  File "/Library/Python/2.5/site-packages/bzrlib/push.py", line 128, in _show_push_branch
    remember)
  File "/Library/Python/2.5/site-packages/bzrlib/bzrdir.py", line 1255, in push_branch
    repository_to.fetch(source.repository, revision_id=revision_id)
  File "/Library/Python/2.5/site-packages/bzrlib/repository.py", line 1544, in fetch
    find_ghosts=find_ghosts, fetch_spec=fetch_spec)
  File "/Library/Python/2.5/site-packages/bzrlib/decorators.py", line 192, in write_locked
    result = unbound(self, *args, **kwargs)
  File "/Library/Python/2.5/site-packages/bzrlib/repository.py", line 3188, in fetch
    pb=pb, find_ghosts=find_ghosts)
  File "/Library/Python/2.5/site-packages/bzrlib/fetch.py", line 79, in __init__
    self.__fetch()
  File "/Library/Python/2.5/site-packages/bzrlib/fetch.py", line 105, in __fetch
    self._fetch_everything_for_search(search)
  File "/Library/Python/2.5/site-packages/bzrlib/fetch.py", line 133, in _fetch_everything_for_search
    stream, from_format, [])
  File "/Library/Python/2.5/site-packages/bzrlib/repository.py", line 3953, in insert_stream
    self.target_repo.start_write_group()
  File "/Library/Python/2.5/site-packages/bzrlib/repository.py", line 1615, in start_write_group
    self._start_write_group()
  File "/Library/Python/2.5/site-packages/bzrlib/repofmt/pack_repo.py", line 2278, in _start_write_group
    self._pack_collection._start_write_group()
  File "/Library/Python/2.5/site-packages/bzrlib/repofmt/pack_repo.py", line 2006, in _start_write_group
    file_mode=self.repo.bzrdir._get_file_mode())
  File "/Library/Python/2.5/site-packages/bzrlib/repofmt/pack_repo.py", line 422, in __init__
    self._writer.begin()
  File "/Library/Python/2.5/site-packages/bzrlib/pack.py", line 129, in begin
    self.write_func(self._serialiser.begin())
  File "/Library/Python/2.5/site-packages/bzrlib/pack.py", line 132, in write_func
    self._write_func(bytes)
  File "/Library/Python/2.5/site-packages/bzrlib/repofmt/pack_repo.py", line 415, in _write_data
    _write(bytes)
  File "/Library/Python/2.5/site-packages/bzrlib/transport/__init__.py", line 267, in write
    self.transport.append_bytes(self.relpath, bytes)
  File "/Library/Python/2.5/site-packages/bzrlib/transport/__init__.py", line 1011, in append_bytes
    return self.append_file(relpath, StringIO(bytes), mode=mode)
  File "/Library/Python/2.5/site-packages/bzrlib/transport/ftp/__init__.py", line 398, in append_file
    self._try_append(relpath, f.read(), mode)
  File "/Library/Python/2.5/site-packages/bzrlib/transport/ftp/__init__.py", line 428, in _try_append
    self._try_append(relpath, text, mode, retries+1)
  File "/Library/Python/2.5/site-packages/bzrlib/transport/ftp/__init__.py", line 427, in _try_append
    self._reconnect()
  File "/Library/Python/2.5/site-packages/bzrlib/transport/ftp/__init__.py", line 160, in _reconnect
    connection, credentials = self._create_connection(credentials)
  File "/Library/Python/2.5/site-packages/bzrlib/transport/ftp/__init__.py", line 139, in _create_connection
    connection.connect(host=self._host, port=self._port)
  File "/System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/ftplib.py", line 132, in connect
  File "/System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/ftplib.py", line 207, in getresp
  File "/System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/ftplib.py", line 193, in getmultiline
  File "/System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/ftplib.py", line 183, in getline
EOFError

bzr 1.17 on python 2.5.1 (darwin)
arguments: ['/usr/local/bin/bzr', 'push', 'ftp://<email address hidden>/test']
encoding: 'UTF-8', fsenc: 'utf-8', lang: 'en_CA.UTF-8'
plugins:
  bzrtools /Library/Python/2.5/site-packages/bzrlib/plugins/bzrtools [1.16]
  email /Library/Python/2.5/site-packages/bzrlib/plugins/email [unknown]
  extmerge /Library/Python/2.5/site-packages/bzrlib/plugins/extmerge [unknown]
  launchpad /Library/Python/2.5/site-packages/bzrlib/plugins/launchpad [1.17]
  loom /Library/Python/2.5/site-packages/bzrlib/plugins/loom [1.4dev]
  netrc_credential_store /Library/Python/2.5/site-packages/bzrlib/plugins/netrc_credential_store [1.17]
  rebase /Library/Python/2.5/site-packages/bzrlib/plugins/rebase [0.5.4dev]
  search /Library/Python/2.5/site-packages/bzrlib/plugins/search [1.7dev]
  svn /Library/Python/2.5/site-packages/bzrlib/plugins/svn [0.6.3]
  upload /Library/Python/2.5/site-packages/bzrlib/plugins/upload [1.0dev]
*** Bazaar has encountered an internal error.
    Please report a bug at https://bugs.launchpad.net/bzr/+filebug
    including this traceback, and a description of what you
    were doing when the error occurred.

Revision history for this message
Martin Pool (mbp) wrote :

Hi,

As the error says, your ftp server does not support appending to existing files. (Do you know what server software it is?) In bzr after 1.17 we added a fix for bug 294709 by which bzr can work around this by reading and rewriting the whole file, though this may be slow. See that bug for more suggestions.

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.