retracer crashes when setting importance of dup'ed bugs

Bug #349407 reported by Martin Pitt
2
Affects Status Importance Assigned to Milestone
apport (Ubuntu)
Fix Released
High
Martin Pitt

Bug Description

Binary package hint: apport

In bug 349029, the reporter marked the bug as duplicate while the retracer was processing it. This led to

Traceback (most recent call last):
  File "/tmp/tmpo44MjG/usr/bin/apport-retrace", line 561, in <module>
    crashdb.update(crashid, report)
  File "/usr/lib/python2.6/dist-packages/apport/crashdb_impl/launchpad.py", line 257, in update
    bug.importance='Medium'
  File "/usr/lib/python2.6/dist-packages/launchpadbugs/lphelper.py", line 257, in <lambda>
    if fset : fset = lambda s, v, n=fset.__name__ : getattr(s, n)(v)
  File "/usr/lib/python2.6/dist-packages/launchpadbugs/html_bug.py", line 52, in f
    return func(a, *args, **kwargs)
  File "/usr/lib/python2.6/dist-packages/launchpadbugs/html_bug.py", line 105, in func
    setattr(reduce(getattr, attributes[:-1]), attributes[-1], value)
  File "/usr/lib/python2.6/dist-packages/launchpadbugs/lphelper.py", line 257, in <lambda>
    if fset : fset = lambda s, v, n=fset.__name__ : getattr(s, n)(v)
  File "/usr/lib/python2.6/dist-packages/launchpadbugs/html_bug.py", line 191, in set_importance
    raise IOError, "The importance of this bug can't be edited, maybe because this bug is a duplicate of an other one"
IOError: The importance of this bug can't be edited, maybe because this bug is a duplicate of an other one
Exception ImportError: ImportError('No module named shutil',) in <bound method __AptDpkgPackageInfo.__del__ of <apport.packaging_impl.__AptDpkgPackageInfo instance at 0xc9e050>> ignored
03/26/09 15:57:50: retracing #349029 failed with status: 1

and due to that, the coredump.gz etc. wasn't removed either.

Martin Pitt (pitti)
Changed in apport (Ubuntu):
assignee: nobody → pitti
importance: Undecided → High
status: New → In Progress
Martin Pitt (pitti)
Changed in apport (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (3.5 KiB)

This bug was fixed in the package apport - 0.146

---------------
apport (0.146) jaunty; urgency=low

  * apport/report.py, _generate_sigsegv_report(): Turn into a class method, so
    that it can be used by test cases in other modules as well. Also add
    missing Signal field.
  * apport/crashdb_impl/launchpad.py: Fully enable operation with
    staging.launchpad.net.
  * apport/crashdb_impl/launchpad.py: Add initial test suite, performing data
    upload, Python and SEGV bug reporting, report download, report updating,
    tag and duplicate handling. This happens on staging.launchpad.net.
  * apport/crashdb.py: Add new interface duplicate_of(id) to return the master
    bug of a duplicate. Also document that close_duplicate() with "None"
    master bug will un-duplicate the bug.
  * apport/crashdb_impl/{launchpad,memory}.py: Implement duplicate_of() and
    add test cases. The Launchpad test case reproduces the
    "duplicate-of-a-duplicate" regression, which now got fixed in
    python-launchpad-bugs bzr head.
  * apport/ui.py, open_url(): Also consider a sesssion as "GNOME" if gconfd-2
    is running; some variants such as UNR do not have gnome-panel; this fixes
    using the preferred browser for them. (LP: #322386)
  * debian/local/apport-collect: Add new option -p to explicitly specify a
    (binary) package name instead of guesstimating it from the bug's source
    package tasks. Document new option in debian/local/apport-collect.1.
    (LP: #333875)
  * apport/crashdb.py, duplicate_db_consolidate(): Add logging about removing
    invalidated bugs from the duplicate database, now that this actually
    works.
  * debian/local/ubuntu-bug.1: Update for the possibility to specify a package
    name or PID without any options. Also document the "ubuntu-bug linux"
    special case. (LP: #348985)
  * debian/local/ubuntu-bug.1: Add missing documentation of the case of
    specifying a path name.
  * backends/packaging-apt-dpkg.py: When unpacking source trees, try
    "debian/rules setup" last, since it is the least common variant.
  * debian/local/ubuntu-fat-chroot: Divert away
    /usr/lib/xulrunner-1.9.1b3/xulrunner-bin. It is called on debian/rules
    patch in xulrunner-1.9.1 and hangs eternally in the fakechroots. This is
    only a temporary kludge, though, until the next xulrunner version lands.
  * apport/crashdb_impl/launchpad.py: Add test case: Update a bug report which
    got marked as a duplicate during processing. This reproduces #349407.
  * apport/crashdb_impl/launchpad.py, update(): Intercept and ignore IOErrors
    when changing the bug priority. This happens if a bug gets duplicated
    underneath us. (LP: #349407)
  * apport/crashdb.py, get_crashdb(): Print syntax errors from parsing
    conf.d/*.conf to stderr.
  * apport/crashdb_impl/launchpad.py: Support new CrashDB option "project"
    which can be set to a LP project name to file bugs against that project
    instead of the distribution. Add test case for filing crash bug against a
    project, updating it, duplicating/unduplicating it, and determining fixed
    version. (LP: #338835)
  * bin/crash-digger: If apport-retrace exits with 99, consider it a transient
   ...

Read more...

Changed in apport:
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.