Do not catch crashes which happen at logout

Bug #460932 reported by Holstener Liesel on 2009-10-26
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
apport (Ubuntu)
Wishlist
Martin Pitt

Bug Description

Binary package hint: apport

Since upgrading from Jaunty to Karmic (amd64), the system keeps frequently informing me of application crashes shortly after almost every startup. I'm getting reports on any number of applications (pidgin, evince, thunderbird, npviewer, seahorse …). Never have I actually witnessed any of those supposed crashes.

I suspect this might have something to do with applications that were running when I last shut down the system: Most of the time the reports appear on system startup, and most of them concern applications I know I've had running during the last, but not yet during the current session. I am however unable to reliably reproduce this by just shutting down the system while these applications are running.

I'll be glad to provide any logfile or console output required.

Marco Rodrigues (gothicx) wrote :

Thanks for your bugreport.

Could you please attach the files in /var/log/dist-upgrade/* ?

> Thanks for your bugreport.
>
> Could you please attach the files in /var/log/dist-upgrade/* ?
>

Here they are.

Martin Pitt (pitti) wrote :

These are all real crashes, though. Some applications might need to ask you to save open documents, etc, so ideally an application wouldn't crash at session logout in the first place.

So it's stil good to report those, but I agree that they are much less interesting than apps that crash while actually using them.

summary: - Frequent "Sorry, *** closed unexpectedly" reports after upgrade to
- Karmic
+ Do not catch crashes which happen at logout
Changed in apport (Ubuntu):
importance: Undecided → Wishlist
status: New → Triaged
Martin Pitt (pitti) on 2011-07-20
Changed in apport (Ubuntu):
assignee: nobody → Martin Pitt (pitti)
Martin Pitt (pitti) wrote :

For GNOME we can ask gnome-session whether it's running:
  gdbus call -e -d org.gnome.SessionManager -o /org/gnome/SessionManager -m org.gnome.SessionManager.IsSessionRunning

so we reject a crash if:

- $DBUS_SESSION_BUS_ADDRESS exists, but we get a d-bus error when trying to connect to it (shutting down session bus)
- org.gnome.SessionManager exists on the bus, but the call fails
- calling IsSessionRunning() returns false (being shut down)

I need a reproducer for this, though, to test this theory.

Changed in apport (Ubuntu):
status: Triaged → In Progress
Martin Pitt (pitti) on 2011-11-09
tags: added: pet-bug
Martin Pitt (pitti) wrote :

Fixed in trunk r2058.

Changed in apport (Ubuntu):
status: In Progress → Fix Committed
Launchpad Janitor (janitor) wrote :
Download full text (3.2 KiB)

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

---------------
apport (1.26-0ubuntu1) precise; urgency=low

  * New upstream release:
    - backends/packaging-apt-dpkg.py: Port to current python-apt API.
    - hookutils.py: Fix path_to_key() to also work with unicode arguments.
    - test/crash: Exit successfully if apport is not enabled in the system.
      This allows packages to run the test suite during build.
    - report.py, add_proc_info(): Correctly handle "python -m <modulename>"
      programs as being interpreted and determine the appropriate module path.
    - Fix some import statements to also work for the system-installed test
      suite.
    - test/run: Fix testing data/general-hooks/parse_segv.py when called in
      system-installed mode.
    - apport/ui.py: Clean up test .crash file after test cases.
    - Fix tests when running as root.
    - setup.py: Fix crash when "javac -version" fails.
    - README: Update command for one-time enablement.
    - backends/packaging-apt-dpkg.py: Fix interleaving usage of
      install_packages() with other operations such as get_version(), by
      resetting the apt status after building and using the sandbox.
    - report.py test suite: Remove requirement that $USER is set, which makes
      it easier to run this from package build environments.
    - apport/ui.py, test/crash: Use "yes" as test process instead of "cat".
      The former is less likely to run already, and does not depend on having
      a stdin, so it runs better in test environments like autopkgtest.
    - backends/packaging-apt-dpkg.py: Fix tests if system does not have a
      dbgsym apt source.
    - Ignore a crash if gnome-session is running and says that the session is
      being shut down. These often die because X.org or other services are
      going away, are usually harmless, and just cause a lot of clutter in bug
      trackers. (LP: #460932)
    - test/crash: Rewrite using Python's unittest, to be in line with other
      tests, and be easier to maintain and extend.
  * Add debian/tests/control and debian/tests/upstream-system:
    DEP-8/autopkgtest control file for running the upstream tests.
  * debian/control: Bump minimal Python version to 2.7, as the upstream trunk
    is now moving to Python 3 compatibility; some of the new syntax does not
    work with 2.6 yet.
  * debian/control: Update apport-retrace package description, apport-chroot
    is gone. Also drop the now obsolete Suggests.
  * debian/rules: Run tests during package build, but do not let them fail the
    build just yet. It will still take a while until all test suceed in the
    buildd environment.
  * debian/control: Add gdb and python-twisted-core build dependencies, so
    that the test suite can succeed.
  * debian/control: Move python-gobject and gir1.2-glib-2.0 dependencies from
    apport-gtk to apport, as our generic.py hook needs it. Also add them to
    build depends for the test suite.
  * debian/control: Add missing lsb-release dependency, used by
    Report.add_os_info().
  * debian/control: Add net-books build dependency, test suite uses "route" to
    determine whether or not to run the online tests.
 -- Martin...

Read more...

Changed in apport (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers