bzr-fastimport crashes on deprecated and removed get_ancestry() method

Bug #1084749 reported by Zygmunt Krynicki
28
This bug affects 5 people
Affects Status Importance Assigned to Milestone
Bazaar Fast Import
Confirmed
High
Unassigned
bzr-fastimport (Ubuntu)
Fix Released
High
Andrew Starr-Bochicchio

Bug Description

22:31:14 Updating branch information ...
bzr: ERROR: exceptions.AttributeError: 'CHKInventoryRepository' object has no attribute 'get_ancestry'

Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 930, in exception_to_return_code
    return the_callable(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 1141, in run_bzr
    ret = run(*run_argv)
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 673, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 697, in run
    return self._operation.run_simple(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/cleanup.py", line 136, in run_simple
    self.cleanups, self.func, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/cleanup.py", line 166, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/plugins/fastimport/cmds.py", line 307, in run
    user_map=user_map)
  File "/usr/lib/python2.7/dist-packages/bzrlib/plugins/fastimport/cmds.py", line 39, in _run
    return proc.process(p.iter_commands)
  File "/usr/lib/python2.7/dist-packages/bzrlib/plugins/fastimport/processors/generic_processor.py", line 310, in process
    super(GenericProcessor, self)._process(command_iter)
  File "/usr/lib/python2.7/dist-packages/fastimport/processor.py", line 79, in _process
    self.post_process()
  File "/usr/lib/python2.7/dist-packages/bzrlib/plugins/fastimport/processors/generic_processor.py", line 351, in post_process
    branches_updated, branches_lost = updater.update()
  File "/usr/lib/python2.7/dist-packages/bzrlib/plugins/fastimport/branch_updater.py", line 61, in update
    if self._update_branch(br, tip):
  File "/usr/lib/python2.7/dist-packages/bzrlib/plugins/fastimport/branch_updater.py", line 168, in _update_branch
    ancestry = self.repo.get_ancestry(last_rev_id)
AttributeError: 'CHKInventoryRepository' object has no attribute 'get_ancestry'

bzr 2.6b2 on python 2.7.3 (Linux-3.5.0-18-generic-i686-with-
    Ubuntu-12.10-quantal)
arguments: ['/usr/bin/bzr', 'fast-import', '-', '/ramdisk/plainbox']
plugins: bash_completion[2.6b2], bzrtools[2.5.0], changelog_merge[2.6b2],
    fastimport[0.13.0], launchpad[2.6b2], netrc_credential_store[2.6b2],
    news_merge[2.6b2], po_merge[2.6b2], rewrite[0.6.4dev], weave_fmt[2.6b2]
encoding: 'utf-8', fsenc: 'UTF-8', lang: 'pl_PL.UTF-8'

*** Bazaar has encountered an internal error. This probably indicates a
    bug in Bazaar. You can help us fix it by filing a bug report at
        https://bugs.launchpad.net/bzr/+filebug
    including this traceback and a description of the problem.

ProblemType: Bug
DistroRelease: Ubuntu 12.10
Package: bzr-fastimport 0.13.0-2
ProcVersionSignature: Ubuntu 3.5.0-18.29-generic 3.5.7
Uname: Linux 3.5.0-18-generic i686
ApportVersion: 2.6.1-0ubuntu6
Architecture: i386
Date: Thu Nov 29 22:54:10 2012
InstallationDate: Installed on 2012-09-07 (83 days ago)
InstallationMedia: Ubuntu 12.10 "Quantal Quetzal" - Alpha i386 (20120905.2)
MarkForUpload: True
PackageArchitecture: all
ProcEnviron:
 TERM=xterm-256color
 PATH=(custom, no user)
 LANG=pl_PL.UTF-8
 SHELL=/bin/bash
SourcePackage: bzr-fastimport
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Zygmunt Krynicki (zyga) wrote :
Revision history for this message
Zygmunt Krynicki (zyga) wrote :

This patch fixes this bug

Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "0.13-2-to-0.13-3.debdiff" of this bug report has been identified as being a patch in the form of a debdiff. The ubuntu-sponsors team has been subscribed to the bug report so that they can review and hopefully sponsor the debdiff. In the event that this is in fact not a patch you can resolve this situation by removing the tag 'patch' from the bug report and editing the attachment so that it is not flagged as a patch. Additionally, if you are member of the ubuntu-sponsors team please also unsubscribe the team from this bug report.

[This is an automated message performed by a Launchpad user owned by Brian Murray. Please contact him regarding any issues with the action taken in this bug report.]

tags: added: patch
Benjamin Drung (bdrung)
Changed in bzr-fastimport:
status: New → Confirmed
Revision history for this message
Benjamin Drung (bdrung) wrote :

Thanks for your work. I like to see your fix accepted by upstream before getting it into the archive. I marked the upstream bzr-fastimport as affected. Please resubscribe ubuntu-sponsors if upstream does not respond (in a timely manner).

The version should be 0.13.0-2ubuntu1 instead of 0.13.0-3 if you want the patch uploaded to Ubuntu. You need supply a patch against the development release (currenly raring) instead of quantal. Please follow [1] if you want the fix in quantal, too. I usually add a .patch suffix to the patch files.

[1] https://wiki.ubuntu.com/StableReleaseUpdates

Revision history for this message
Jelmer Vernooij (jelmer) wrote :

Thanks for the patch.

The reason for removing .get_ancestry() was that it scales very badly (with ancestry) and accesses all of the ancestry even when that is not necessary. In this case, I think full ancestry access can be avoided so a more optimal patch is necessary.

Changed in bzr-fastimport (Ubuntu):
status: New → Triaged
importance: Undecided → High
Changed in bzr-fastimport:
importance: Undecided → High
Revision history for this message
Benjamin Drung (bdrung) wrote :

Jelmer, is there any progress on this bug? This bug collects duplicates.

Revision history for this message
Jelmer Vernooij (jelmer) wrote :

I'm no longer involved in bzr development. FWIW I think shipping the workaround patch would make sense, as it seems nobody is stepping up to fix this bug properly.

Revision history for this message
DarkLinkXXXX (darklinkxxxx) wrote :

I agree with Jelmer. Applying a patch to get something to work how it's supposed to isn't difficult, but quite annoying.

Revision history for this message
Jelmer Vernooij (jelmer) wrote : Re: [Bug 1084749] Re: bzr-fastimport crashes on deprecated and removed get_ancestry() method

On Sun, Nov 24, 2013 at 07:53:24PM -0000, DarkLinkXXXX wrote:
> I agree with Jelmer. Applying a patch to get something to work how it's
> supposed to isn't difficult, but quite annoying.
I think you misunderstood my reply. The only proposed patch is a
workaround, not a proper fix. It's better than being completely broken
though.

Revision history for this message
Andrew Starr-Bochicchio (andrewsomething) wrote :

I'll go ahead and make an upload to Debian and sync it into Ubuntu.

Note that bzr-fastimport is orphaned in Debian. If anyone might be interested in taking over its maintenance, I'd be happy to review/sponsor uploads.

Changed in bzr-fastimport (Ubuntu):
status: Triaged → In Progress
assignee: nobody → Andrew Starr-Bochicchio (andrewsomething)
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package bzr-fastimport - 0.13.0-3

---------------
bzr-fastimport (0.13.0-3) unstable; urgency=low

  * QA upload.

  [ Jelmer Vernooij ]
  * Add XS-Testsuite: autopkgtest header. Closes: #692658

  [ Zygmunt Krynicki ]
  * debian/patches/dont-use-get_ancestry.diff: Don't use deprecated
    and removed get_ancestry() method (LP: #1084749).

  [ Andrew Starr-Bochicchio ]
  * debian/patches/improve_error_message.diff: Backport upstream
    commit to print sane error when a fastimport file is incomplete
    (LP: #937972).
  * debian/control: Bump Standards-Version to 3.9.4, no changes needed.
  * debian/tests/control:
   - Add python-subunit test dependency.
   - Drop undefined "no-build-needed" feature.

 -- Andrew Starr-Bochicchio <email address hidden> Sun, 24 Nov 2013 18:01:20 -0500

Changed in bzr-fastimport (Ubuntu):
status: In Progress → 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.