Unity (and sometimes maliit) crashes after maliit-server is restarted and is used.

Bug #1243444 reported by Christopher Lee
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ubuntu-keyboard
Fix Released
Undecided
Unassigned
unity-mir
Fix Released
Medium
Gerry Boland
ubuntu-keyboard (Ubuntu)
Fix Released
Undecided
Unassigned
unity-mir (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

I've seen unity8 and sometimes maliit crash while running the ubuntu-keyboard autopilot tests.

Specifically running this branch which restarts the maliit-server at the start of a test suite run:
https://code.launchpad.net/~veebers/ubuntu-keyboard/restarting-maliit-for-tests/+merge/190005

To reproduce:

Branch the above
cd <path to branch>/tests/autopilot
autopilot run ubuntu_keyboard

I've attached the recent crash files, I'll continue testing to see if I can get the maliit-server one that I'm sure I've seen in the past.

Related branches

Revision history for this message
Christopher Lee (veebers) wrote :
Revision history for this message
Michał Sawicz (saviq) wrote :

Please use apport-cli to file the .crash files so that they get retraced.

Revision history for this message
Michał Sawicz (saviq) wrote :

I've retraced the crash locally and it seems it's a crash in unity-mir:

Stacktrace:
 #0 isEmpty (this=0x5ad8aa08) at /usr/include/qt5/QtCore/qhash.h:304
 No locals.
 #1 QHash<InputArea const*, QHashDummyValue>::remove (this=this@entry=0x5ad8aa08, akey=@0x4e440c44: 0x5ac632e8) at /usr/include/qt5/QtCore/qhash.h:779
         oldSize = <optimized out>
         node = <optimized out>
 #2 0x45b1cbe0 in remove (value=@0x4e440c44: 0x5ac632e8, this=0x5ad8aa08) at /usr/include/qt5/QtCore/qset.h:88
 No locals.
 #3 MirSurface::removeInputArea (this=0x5ad8a9f0, area=area@entry=0x5ac632e8) at mirsurface.cpp:170
         res = <optimized out>
 #4 0x45b1dc40 in InputArea::doSetSurface (this=0x5ac632e8, surface=0x5fa80818) at inputarea.cpp:88
 No locals.
 #5 0x45b2101a in InputArea::qt_metacall (this=0x5ac632e8, _c=QMetaObject::WriteProperty, _id=1, _a=0x4e440db8) at moc_inputarea.cpp:163
         _v = <optimized out>
[...]

affects: unity8 → unity-mir
Changed in unity-mir:
importance: Undecided → Medium
assignee: nobody → Gerry Boland (gerboland)
Revision history for this message
Michał Sawicz (saviq) wrote :

The qmlscene crash (attached retraced) is an abort of qmlscene when it failed to connect to unity8 - which was unavailable most probably due to the crash.

Revision history for this message
Michał Sawicz (saviq) wrote :

I'd expect maliit to have crashed from the same reason, so marking the bug for it as invalid.

Changed in ubuntu-keyboard:
status: New → Invalid
Gerry Boland (gerboland)
Changed in unity-mir:
status: New → In Progress
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

Fix committed into lp:unity-mir at revision 141, scheduled for release in unity-mir, milestone phone-v1-freeze

Changed in unity-mir:
status: In Progress → Fix Committed
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

Fix committed into lp:ubuntu-keyboard at revision 96, scheduled for release in ubuntu-keyboard, milestone Unknown

Changed in ubuntu-keyboard:
status: Invalid → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-keyboard - 0.99.trunk.phablet2+14.04.20131105.1-0ubuntu1

---------------
ubuntu-keyboard (0.99.trunk.phablet2+14.04.20131105.1-0ubuntu1) trusty; urgency=low

  [ Michael Terry ]
  * Enable tests during build and document the various copyrights
    better. Adds Build-Depends on libxml2-utils, qtdeclarative5-ubuntu-
    ui-toolkit-plugin, and xvfb.

  [ Thomas Moenicke ]
  * language branch.

  [ Christopher Lee ]
  * For ease of testing the ubuntu-keyboard testsuite takes care of
    restarting maliit-server with testability for the duration of the
    tests. (LP: #1243444)

  [ Guenter Schwann ]
  * Add a helper skript to disable all settings on the device.
  * Do not cancel predictive text on backspace, but update it. (LP:
    #1202694)
  * Split up C++ and QML a bit better.

  [ Ubuntu daily release ]
  * Automatic snapshot from revision 98
 -- Ubuntu daily release <email address hidden> Tue, 05 Nov 2013 15:25:54 +0000

Changed in ubuntu-keyboard (Ubuntu):
status: New → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package unity-mir - 0.1+14.04.20131119-0ubuntu1

---------------
unity-mir (0.1+14.04.20131119-0ubuntu1) trusty; urgency=low

  [ Gerry Boland ]
  * On MirSurface destruction, any InputAreas on that surface will be
    notified and remove their links to that surface. Fixes crash
    bug:1243444. (LP: #1243444)

  [ Alan Griffiths ]
  * Remove dependency on mir::shell::SessionManager.
  * Remove dependency on mir::surfaces::SurfaceController.
  * Remove dependency on msh::OrganisingSurfaceFactory.
  * Avoid relying on an explicit Mir typename that changes in a
    refactoring coming soon.
  * Do all the hacky surface creation customization in
    SurfaceFactory::create_surface() - and don't mention SurfaceBuilder
    at all. (That will allow Mir to get rid of that interface.).

  [ Albert Astals ]
  * Don't include the QtQml megaheader Include the one we really need.

  [ Ubuntu daily release ]
  * Automatic snapshot from revision 144
 -- Ubuntu daily release <email address hidden> Tue, 19 Nov 2013 19:11:22 +0000

Changed in unity-mir (Ubuntu):
status: New → Fix Released
Changed in ubuntu-keyboard:
status: Fix Committed → Fix Released
Changed in unity-mir:
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.