apport refuses to report a crash from another machine if package is not installed locally

Bug #1226030 reported by Jean-Baptiste Lallement
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
apport (Ubuntu)
Fix Released
Undecided
Martin Pitt

Bug Description

Apport refuses to submit a report from a crash file collected on another machine if the package is not installed on the local machine.
The use case is a report generated and collected on a touch device and reported from a PC or laptop.

TEST CASE:
1. On a touch device, generate a crash file for a package that doesn't exist on your local machine, for example maliit-server
  # kill -SIGSEGV $(pidof maliit-server)

2. Check that a crash file has been generated in /var/crash/
  # ls -l /var/crash/
  total 8220
  -rw-r----- 1 phablet whoopsie 8416974 Sep 16 12:46 _usr_bin_maliit-server.32011.crash

3. Collect information required by apport.
To the question "What would you like to do? Your options are:" answer "(V) View"
(If apport tells that it is using third party software proceed anyway)

4. When apport is done with data collection, choose (K) Keep and save the new crash file
5. Copy it to an intel machine
  $ adb pull /var/crash/_usr_bin_maliit-server.32011.crash /tmp/

6. Run ubuntu-bug against this file:
ubuntu-bug /tmp/_usr_bin_maliit-server.32011.crash

ACTUAL RESULT:
Reporting fails with an Invalid problem report "This problem report applies to a program which is not installed any more. (/usr/bin/maliit-server)"

EXPECTED RESULT:
Report is uploaded to LP

ProblemType: Bug
DistroRelease: Ubuntu 13.10
Package: apport 2.12.1-0ubuntu4
ProcVersionSignature: Ubuntu 3.11.0-7.13-generic 3.11.0
Uname: Linux 3.11.0-7-generic x86_64
ApportLog:

ApportVersion: 2.12.1-0ubuntu4
Architecture: amd64
CrashReports: 640:0:136:18987:2013-09-16 09:29:27.782969437 +0200:2013-09-16 09:53:34.936026957 +0200:/var/crash/_usr_bin_twistd.0.crash
Date: Mon Sep 16 14:39:40 2013
MarkForUpload: True
PackageArchitecture: all
SourcePackage: apport
UpgradeStatus: Upgraded to saucy on 2012-01-31 (593 days ago)
mtime.conffile..etc.apport.crashdb.conf: 2013-08-28T08:47:19.111940

Revision history for this message
Jean-Baptiste Lallement (jibel) wrote :
Revision history for this message
Martin Pitt (pitti) wrote :

That's actually what the ui.test_run_crash_precollected test case should cover. Could it be that there is no gdb installed on the phone, so that it cannot actually determine a StacktraceAddressSignature and Stacktrace? The dependency was removed from apport itself a long time ago due to

apport (1.8.1-0ubuntu1) karmic; urgency=low

  * Move gdb dependency from apport to GUI packages to avoid pulling in gdb on
    Ubuntu server. Thanks to Steve Beattie! (LP: #354172)

But indeed these days apport cannot work any more without gdb, so I think I'll just add it back. Subscribing Steve Beattie.

JB, could you try installing gdb on the phone and verify that this works then? Thanks!

Revision history for this message
Martin Pitt (pitti) wrote :

Ah, I should actually add the dependency to apport-noui, that's seeded on the phone but not by default on servers.

Revision history for this message
Jean-Baptiste Lallement (jibel) wrote :

Not easy to install gdb as filesystem is readonly.

Revision history for this message
Jean-Baptiste Lallement (jibel) wrote :

I installed gdb on the device, then ran apport-cli /path_to_crash_file but I still cannot upload the report from another machine.

Martin Pitt (pitti)
Changed in apport (Ubuntu):
assignee: nobody → Martin Pitt (pitti)
status: New → In Progress
Revision history for this message
Martin Pitt (pitti) wrote :

Fixed in trunk r2700.

Changed in apport (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package apport - 2.12.2-0ubuntu1

---------------
apport (2.12.2-0ubuntu1) saucy; urgency=low

  * New upstream bug fix release. Changes since previous snapshot:
    - crash-digger: Write pid into lock file. Thanks Steve Langasek.
    - apport-gtk: When loading a Bug report from a file, properly set up for
      bug reporting mode. (LP: #1226140)
    - Move "program is not installed any more" check from report loading into
      data collection, so that crash reports can be moved and reported on
      machines without that program installed. (LP: #1226030)
  * data/general-hooks/ubuntu.py: Add output of "system-image-info -i" to
    reports as field "SystemImageInfo", to better identify phablet builds.
    (LP: #1225113)
  * Add gdb-minimal dependency to apport-noui, as for crashes we always need a
    StacktraceAddressSignature at least. (part of LP #1226030)
 -- Martin Pitt <email address hidden> Tue, 17 Sep 2013 16:25:55 -0500

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