indicator-location crashing during default, sdk and click_image_tests tests on smoketesting

Bug #1338610 reported by Łukasz Zemczak
72
This bug affects 9 people
Affects Status Importance Assigned to Milestone
Indicator Location
New
Undecided
Unassigned
platform-api
Fix Released
High
Thomas Voß
platform-api (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Since image #113 we have noticed crashfiles from indicator-location happening for 3 test suites in smoketesting: default, sdk and click_image_tests. Those are the non-autopilot test suites. Links to the crashes:

http://ci.ubuntu.com/smokeng/utopic/touch/mako/116:20140707:20140625/8902/click_image_tests/
http://ci.ubuntu.com/smokeng/utopic/touch/mako/116:20140707:20140625/8902/sdk/
http://ci.ubuntu.com/smokeng/utopic/touch/mako/116:20140707:20140625/8902/default/

Those crashers do not affect the test results, nor do they appear during normal usage of the phone.b

Related branches

Revision history for this message
Charles Kerr (charlesk) wrote :

Unfortunately, apport-retrace thinks that all three of these crash reports have corrupt cores and don't provide useful backtraces. All of them show that /something/ called abort(), but the retrace fails before we get to the caller:

SourcePackage: indicator-location
Stacktrace:
 #0 0xb6b258e6 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
 No symbol table info available.
 #1 0xb6b3405e in raise () from /lib/arm-linux-gnueabihf/libc.so.6
 No symbol table info available.
 #2 0xb6b34d4e in abort () from /lib/arm-linux-gnueabihf/libc.so.6
 No symbol table info available.
 #3 0xb6c622b4 in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
 No symbol table info available.
 #4 0xb6c60af0 in ?? () from /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
 No symbol table info available.
 Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Same for all three traces.

FWIW there's no direct call to abort(), assert(), g_error() in the indicator-location codebase, so the abort() call is coming from somewhere else in the stack.

Revision history for this message
Charles Kerr (charlesk) wrote :

So, thostr_ noticed something I didn't :-P by looking at the indicator-location logs:

terminate called after throwing an instance of 'std::runtime_error'
  what(): org.freedesktop.DBus.Error.ServiceUnknown: The name com.ubuntu.location.Service was not provided by any .service files
terminate called after throwing an instance of 'std::runtime_error'
  what(): org.freedesktop.DBus.Error.ServiceUnknown: The name com.ubuntu.location.Service was not provided by any .service files
terminate called after throwing an instance of 'std::runtime_error'
  what(): org.freedesktop.DBus.Error.ServiceUnknown: The name com.ubuntu.location.Service was not provided by any .service files
terminate called after throwing an instance of 'std::runtime_error'
  what(): org.freedesktop.DBus.Error.ServiceUnknown: The name com.ubuntu.location.Service was not provided by any .service files

Revision history for this message
Charles Kerr (charlesk) wrote :

It looks like we brute forcing this by adding location service to indicator-datetime's debian/control file would work, but I'm not sure that's the right fix: from indicator-datetime's point of view, location-service isn't used directly, but rather is hidden behind platform-api's public API.

So it seems cleaner for com.ubuntu.location.Service to be in platform-api's dependencies, and only /indirectly/ in indicator-location's dependencies via platform-api.

Adding Thomas to this ticket for a second opinion...

Changed in platform-api:
assignee: nobody → Thomas Voß (thomas-voss)
Revision history for this message
Thomas Voß (thomas-voss) wrote :

I think the real problem is not the service not being available, but the platform API not handling the error case gracefully. Bumped Priority to "High", will introduce a more sensible error handling strategy.

Changed in platform-api:
importance: Undecided → High
tags: added: lt-category-noimpact lt-date-20140704 lt-prio-low
Revision history for this message
Jean-Baptiste Lallement (jibel) wrote :

It's very likely this problem on errors.u.c:

https://errors.ubuntu.com/problem/7fbb29cd16437f0b85c68abcc20d4d0b6cea0c13 and bug 1344047 is a duplicate

Revision history for this message
Chris Gagnon (chris.gagnon) wrote :

confirmed bug 1344047 is a dupe with charles.

tags: added: lt-whitelisted
Changed in platform-api:
status: New → In Progress
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package platform-api - 2.2.0+14.10.20140730-0ubuntu1

---------------
platform-api (2.2.0+14.10.20140730-0ubuntu1) utopic; urgency=low

  [ thomas-voss ]
  * Check for null in functions accessing a session object. Make sure
    that exceptions cannot propagate for controller interactions. (LP:
    #1338610)
 -- Ubuntu daily release <email address hidden> Wed, 30 Jul 2014 07:26:34 +0000

Changed in platform-api (Ubuntu):
status: New → Fix Released
Revision history for this message
Allan LeSage (allanlesage) wrote :

Note, not tagging for our qa-daily-testing/rtm14 as user interaction isn't affected.

Changed in platform-api:
status: In Progress → 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.