unity-2d does not start if user has logged in on unity

Bug #993694 reported by Thomas Bushnell, BSG
32
This bug affects 4 people
Affects Status Importance Assigned to Milestone
d-conf (Ubuntu)
Fix Released
High
Unassigned
Precise
Fix Released
High
Unassigned
unity-2d (Ubuntu)
Invalid
High
Unassigned
Precise
Invalid
High
Unassigned

Bug Description

Impact:
it makes unit-2d not usable with some dconf setups

Steps to reproduce:
- create a dconf profile with multiple databases
- log into an unity-2d session
-> without the fix unity-d wouldn't start

Regression potential:
limited, that dconf code is only used by unity-2d (qt), shouldn't have any impact on the standard GNOME users, just check that unity-2d is still working

---

I see a pointer on a background with no panel or notification area.

Right-click brings up the expected menu.

Ctrl-Alt-<arrow> seems to be switching between (empty) workspaces: the UI responds at least.

Attached is the .xsession-errors, which shows that unity-2d-panel has crashed repeatedly.

Revision history for this message
Thomas Bushnell, BSG (tbushnell) wrote :
Revision history for this message
Didier Roche-Tolomelli (didrocks) wrote :

Hey Thomas,

I coudln't reproduce this issue following the test case. I would be interesting in seeing the stacktrace from unity-2d that you are getting, can you report it please?

Changed in unity-2d (Ubuntu):
status: New → Incomplete
Revision history for this message
Thomas Bushnell, BSG (tbushnell) wrote :

I'd be happy to Didier, but I don't know the best way to generate one. I'll be happy to try if you provide instructions.

However, I'm not sure why you expect to see a stack trace; it looks as though the program is getting a BadWindow error from the X Server and exiting.

Revision history for this message
Didier Roche-Tolomelli (didrocks) wrote :

As it seems metacity is running (as you can change workspace), can you first try to run unity-2d-panel and unity-2d-shell from a command line (ctrl + alt + t to start one) and see what you get?

Revision history for this message
Thomas Bushnell, BSG (tbushnell) wrote :

Let's see. When it fails I log in via ssh and watch what's happening. As the .xsession-errors indicates, it's spinning on a unity-2d-panel failure, but unity-2d-shell is running and doesn't report any errors. Eventually it gives up as noted, ending with

gnome-session[22299]: WARNING: Application 'unity-2d-panel.desktop' killed by signal
gnome-session[22299]: WARNING: App 'unity-2d-panel.desktop' respawning too quickly
gnome-session[22299]: CRITICAL: We failed, but the fail whale is dead. Sorry....

As expected, metacity seems fine, and C-M-t brings up a terminal.

If I run unity-2d-panel from that shell, it takes a while to begin starting up, and then I get the results in the attached unity-2d-panel.typescript.

Revision history for this message
Thomas Bushnell, BSG (tbushnell) wrote :
Download full text (4.5 KiB)

So then I rebooted, and removed the user directory, and logged in on unity-2d--so it should be a completely fresh state--and it didn't work, though with fewer errors. This time you see that it crashed once, but the second time it's actually still running, though the panel is not painted on the screen.

$ grep unity-2d-panel .xsession-errors
unity-2d-panel: [DEBUG] Scanning panel plugin directory "/usr/lib/unity-2d/plugins/panel"
unity-2d-panel: [DEBUG] Loading panel plugin: "/usr/lib/unity-2d/plugins/panel/libpanelplugin-appindicator.so"
unity-2d-panel: [DEBUG] Loading panel plugin: "/usr/lib/unity-2d/plugins/panel/libpanelplugin-appname.so"
unity-2d-panel: [DEBUG] Loading panel plugin: "/usr/lib/unity-2d/plugins/panel/libpanelplugin-indicator.so"
unity-2d-panel: [DEBUG] Loading panel plugin: "/usr/lib/unity-2d/plugins/panel/libpanelplugin-legacytray.so"
unity-2d-panel: [DEBUG] Loading panel plugin: "/usr/lib/unity-2d/plugins/panel/libpanelplugin-separator.so"
unity-2d-panel: [DEBUG] Configured plugins list is: ("appname", "!legacytray", "indicator")
unity-2d-panel: [DEBUG] bool KeyMonitor::registerEvents(): Could not open device: Virtual core pointer
unity-2d-panel: [DEBUG] bool KeyMonitor::registerEvents(): Could not open device: Virtual core keyboard
unity-2d-panel: [WARNING] X Error: BadWindow (invalid Window parameter) 3
unity-2d-panel: [DEBUG] Scanning panel plugin directory "/usr/lib/unity-2d/plugins/panel"
unity-2d-panel: [DEBUG] Loading panel plugin: "/usr/lib/unity-2d/plugins/panel/libpanelplugin-appindicator.so"
unity-2d-panel: [DEBUG] Loading panel plugin: "/usr/lib/unity-2d/plugins/panel/libpanelplugin-appname.so"
unity-2d-panel: [DEBUG] Loading panel plugin: "/usr/lib/unity-2d/plugins/panel/libpanelplugin-indicator.so"
unity-2d-panel: [DEBUG] Loading panel plugin: "/usr/lib/unity-2d/plugins/panel/libpanelplugin-legacytray.so"
unity-2d-panel: [DEBUG] Loading panel plugin: "/usr/lib/unity-2d/plugins/panel/libpanelplugin-separator.so"
unity-2d-panel: [DEBUG] Configured plugins list is: ("appname", "!legacytray", "indicator")
unity-2d-panel: [WARNING] X Error: BadWindow (invalid Window parameter) 3
unity-2d-panel: [DEBUG] virtual void Hotkey::connectNotify(const char*): Grabbing hotkey "Alt+F10"
gnome-session[10289]: WARNING: Application 'unity-2d-panel.desktop' killed by signal
unity-2d-panel: [DEBUG] Scanning panel plugin directory "/usr/lib/unity-2d/plugins/panel"
unity-2d-panel: [DEBUG] Loading panel plugin: "/usr/lib/unity-2d/plugins/panel/libpanelplugin-appindicator.so"
unity-2d-panel: [DEBUG] Loading panel plugin: "/usr/lib/unity-2d/plugins/panel/libpanelplugin-appname.so"
unity-2d-panel: [DEBUG] Loading panel plugin: "/usr/lib/unity-2d/plugins/panel/libpanelplugin-indicator.so"
unity-2d-panel: [DEBUG] Loading panel plugin: "/usr/lib/unity-2d/plugins/panel/libpanelplugin-legacytray.so"
unity-2d-panel: [DEBUG] Loading panel plugin: "/usr/lib/unity-2d/plugins/panel/libpanelplugin-separator.so"
unity-2d-panel: [DEBUG] Configured plugins list is: ("appname", "!legacytray", "indicator")
unity-2d-panel: [DEBUG] bool KeyMonitor::registerEvents(): Could not open device: Virtual core pointer
unity-2d-panel...

Read more...

Revision history for this message
Thomas Bushnell, BSG (tbushnell) wrote :

Could there be something in the accounts database that gets tweaked by Unity and that is causing Unity 2D problems?

Revision history for this message
Thomas Bushnell, BSG (tbushnell) wrote :

Ok, on a completely fresh install I can't get unity-2d to start (with exactly the same reports as mentioned above). So at least that means that the "after unity has been used" is a likely red herring. I have in the past had unity-2d start, but ::shrug::.

Some interesting things that might be relevant:
1) We're using the nvidia-current drivers.
2) This is a dual monitor setup, with TwinView enabled. (However, we get problems with single-monitor setups too.)

Revision history for this message
Didier Roche-Tolomelli (didrocks) wrote :

Thanks for the additional information Thomas,

/tmp/unity-support-test.0 isn't relevant at all in that case.

Ok, so unity-2d receives a BadWindow error in your configuration and it seems it's not linked at all at the user data in their home directory. I'm pretty sure unity-2d should crash, do you have nothing in /var/crash/*unity*2d* ? If so, can you please apport-collect the crash and attach it to this bug?

Revision history for this message
Gerry Boland (gerboland) wrote :

Hi there Thomas,
thanks for your detailed information so far. I also am unable to reproduce this myself. However from the stacktrace you supplied, I see the crash is happening during dbus traffic. I suspect these errors are vital:

[WARNING] Object::connect: No such signal QDBusAbstractInterface::activeChanged(bool) in /build/buildd/unity-2d-5.10.0/libunity-2d-private/src/dashclient.cpp:72
[WARNING] Object::connect: No such signal QDBusAbstractInterface::alwaysFullScreenChanged(bool) in /build/buildd/unity-2d-5.10.0/libunity-2d-private/src/dashclient.cpp:74
[WARNING] Object::connect: No such signal QDBusAbstractInterface::screenChanged(int) in /build/buildd/unity-2d-5.10.0/libunity-2d-private/src/dashclient.cpp:76
[WARNING] void DashClient::connectToDash(): Fetching Dash.active property failed
[WARNING] void DashClient::connectToDash(): Fetching Dash.alwaysFullScreen property failed
[WARNING] void DashClient::connectToDash(): Fetching Dash.screen property failed
[WARNING] Object::connect: No such signal QDBusAbstractInterface::activeChanged(bool) in /build/buildd/unity-2d-5.10.0/libunity-2d-private/src/hudclient.cpp:71
[WARNING] Object::connect: No such signal QDBusAbstractInterface::screenChanged(int) in /build/buildd/unity-2d-5.10.0/libunity-2d-private/src/hudclient.cpp:73
[WARNING] void HUDClient::connectToHud(): Fetching HUD.active property failed
[WARNING] void HUDClient::connectToHud(): Fetching Hud.screen property failed

Some properties like Dash.active and HUD.active are shared between the panel & the shell via dbus (when Dash/HUD open, panel reacts). These errors imply that something is broken with this property sharing. I need to dig more to determine what could be going wrong.

Changed in unity-2d (Ubuntu):
importance: Undecided → High
Changed in unity-2d (Ubuntu Precise):
importance: Undecided → High
status: New → Incomplete
Changed in d-conf (Ubuntu):
status: New → Fix Released
importance: Undecided → High
Changed in d-conf (Ubuntu Precise):
importance: Undecided → High
status: New → In Progress
description: updated
Revision history for this message
Clint Byrum (clint-fewbar) wrote : Please test proposed package

Hello Thomas, or anyone else affected,

Accepted d-conf into precise-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/d-conf/0.12.0-0ubuntu1.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please change the bug tag from verification-needed to verification-done. If it does not, change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in d-conf (Ubuntu Precise):
status: In Progress → Fix Committed
tags: added: verification-needed
Revision history for this message
Thomas Bushnell, BSG (tbushnell) wrote :

Yes, I can confirm that these packages work for us. Thanks!

tags: added: verification-done
removed: verification-needed
Revision history for this message
Adam Conrad (adconrad) wrote : Update Released

The verification of this Stable Release Update has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regresssions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package d-conf - 0.12.0-0ubuntu1.1

---------------
d-conf (0.12.0-0ubuntu1.1) precise-proposed; urgency=low

  * debian/patches/git_fix_watch_multiple_sources.patch:
    - git commit to fix watching for multiple sources (lp: #993694)
 -- Sebastien Bacher <email address hidden> Wed, 08 Aug 2012 23:25:59 +0200

Changed in d-conf (Ubuntu Precise):
status: Fix Committed → Fix Released
Changed in unity-2d (Ubuntu):
status: Incomplete → Invalid
Changed in unity-2d (Ubuntu Precise):
status: Incomplete → Invalid
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.