Bug 817841
Summary: | GTG+pyclutter == SIGSEGV | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Pedro Francisco <pedrogfrancisco> | ||||||||||||||||||||||
Component: | gtg | Assignee: | Yanko Kaneti <yaneti> | ||||||||||||||||||||||
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||||||||||||||||||||
Severity: | unspecified | Docs Contact: | |||||||||||||||||||||||
Priority: | unspecified | ||||||||||||||||||||||||
Version: | 17 | CC: | dmalcolm, ejsheldrake, i18n-bugs, ivazqueznet, jonathansteffan, metherid, pedrogfrancisco, sanjay.ankur, shawn.p.huang, tfujiwar, tomspur, yaneti | ||||||||||||||||||||||
Target Milestone: | --- | ||||||||||||||||||||||||
Target Release: | --- | ||||||||||||||||||||||||
Hardware: | i686 | ||||||||||||||||||||||||
OS: | Unspecified | ||||||||||||||||||||||||
Whiteboard: | abrt_hash:e47ff4a4af97e7332a6bfc550b41764568b1f7b8 | ||||||||||||||||||||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||||||||||||||||||||
Doc Text: | Story Points: | --- | |||||||||||||||||||||||
Clone Of: | Environment: | ||||||||||||||||||||||||
Last Closed: | 2012-06-26 00:44:59 UTC | Type: | --- | ||||||||||||||||||||||
Regression: | --- | Mount Type: | --- | ||||||||||||||||||||||
Documentation: | --- | CRM: | |||||||||||||||||||||||
Verified Versions: | Category: | --- | |||||||||||||||||||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||||||||||||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||||||||||||||||||
Embargoed: | |||||||||||||||||||||||||
Attachments: |
|
Description
Pedro Francisco
2012-05-01 14:36:15 UTC
Created attachment 581396 [details]
File: core_backtrace
Created attachment 581397 [details]
File: event_log
Created attachment 581398 [details]
File: backtrace
Created attachment 581399 [details]
File: maps
Created attachment 581400 [details]
File: dso_list
Created attachment 581401 [details]
File: build_ids
Created attachment 581402 [details]
File: var_log_messages
Thanks for the bug report. The first python releated frame is around #78. All above are gtk/ibus related and it's likely a ibus bug than a gtk one. #0 gdk_display_manager_get_default_display (manager=0x0) at gdkdisplaymanager.c:285 No locals. #1 0x4648e62d in gdk_display_get_default () at gdkdisplaymanager.c:303 No locals. #2 0xb641b995 in ibus_im_context_class_init (class=0xa151aa0) at ibusimcontext.c:504 im_context_class = <optimized out> gobject_class = <optimized out> __PRETTY_FUNCTION__ = "ibus_im_context_class_init" #3 0x41a36ad6 in type_class_init_Wm (pclass=0x9cc6820, node=0xa151a08) at gtype.c:2219 slist = <optimized out> init_slist = <optimized out> i = 0 class = 0xa151aa0 entries = <optimized out> entry = <optimized out> bnode = <optimized out> pnode = 0x982e5a0 Reassigning to ibus. Which python application did you use? I cannot reproduce your problem. ibus requires to open $DISPLAY and I don't think it's a bug. "Getting Things Gnome" (...) cmdline: /usr/bin/python /usr/bin/gtg comment: Always [happens]: [when] opening Getting Things Gnome (...) # rpm -qa gtg python ibus python-2.7.3-3.fc17.i686 gtg-0.2.4-6.fc17.noarch ibus-1.4.99.20120428-1.fc17.i686 Running from a Gnome Shell session. (In reply to comment #10) > "Getting Things Gnome" > (...) > cmdline: /usr/bin/python /usr/bin/gtg > comment: Always [happens]: [when] opening Getting Things Gnome > (...) > > # rpm -qa gtg python ibus > python-2.7.3-3.fc17.i686 > gtg-0.2.4-6.fc17.noarch > ibus-1.4.99.20120428-1.fc17.i686 > > Running from a Gnome Shell session. I tried gtg and I cannot reproduce your problem. Are you still able to reproduce your problem? I wonder how do you start the desktop session. $ gtg ** (process:16664): WARNING **: Trying to register gtype 'GMountMountFlags' as enum when in fact it is of type 'GFlags' ** (process:16664): WARNING **: Trying to register gtype 'GDriveStartFlags' as enum when in fact it is of type 'GFlags' ** (process:16664): WARNING **: Trying to register gtype 'GSocketMsgFlags' as enum when in fact it is of type 'GFlags' Gtk-Message: Failed to load module "pk-gtk-module" /usr/lib/python2.7/site-packages/GTG/taskbrowser/browser.py:2004: Warning: cannot register existing type `GdkDisplayManager' self.window.show() /usr/lib/python2.7/site-packages/GTG/taskbrowser/browser.py:2004: Warning: g_once_init_leave: assertion `result != 0' failed self.window.show() /usr/lib/python2.7/site-packages/GTG/taskbrowser/browser.py:2004: Warning: g_type_register_static: assertion `parent_type > 0' failed self.window.show() /usr/lib/python2.7/site-packages/GTG/taskbrowser/browser.py:2004: Warning: g_object_new: assertion `G_TYPE_IS_OBJECT (object_type)' failed self.window.show() Segmentation fault (core dumped) I'm on x86, I'll try on x86-64 (tomorrow or after) to check if it happens there was well. Session was started from GDM. (In reply to comment #12) > $ gtg > > ** (process:16664): WARNING **: Trying to register gtype 'GMountMountFlags' as > enum when in fact it is of type 'GFlags' > > ** (process:16664): WARNING **: Trying to register gtype 'GDriveStartFlags' as > enum when in fact it is of type 'GFlags' > > ** (process:16664): WARNING **: Trying to register gtype 'GSocketMsgFlags' as > enum when in fact it is of type 'GFlags' > Gtk-Message: Failed to load module "pk-gtk-module" > /usr/lib/python2.7/site-packages/GTG/taskbrowser/browser.py:2004: Warning: > cannot register existing type `GdkDisplayManager' > self.window.show() > /usr/lib/python2.7/site-packages/GTG/taskbrowser/browser.py:2004: Warning: > g_once_init_leave: assertion `result != 0' failed > self.window.show() > /usr/lib/python2.7/site-packages/GTG/taskbrowser/browser.py:2004: Warning: > g_type_register_static: assertion `parent_type > 0' failed > self.window.show() > /usr/lib/python2.7/site-packages/GTG/taskbrowser/browser.py:2004: Warning: > g_object_new: assertion `G_TYPE_IS_OBJECT (object_type)' failed > self.window.show() > Segmentation fault (core dumped) > > > > I'm on x86, I'll try on x86-64 (tomorrow or after) to check if it happens there > was well. > Session was started from GDM. I don't think this error is caused by ibus. You could disable ibus with 'im-chooser' command. Created attachment 583658 [details]
abrt server retrace for GTG crash after uninstalling ibus
Uninstalled ibus; tried to run GTG, crash as well, but I could see main window being drawn for half a second.
$ sudo yum list installed |grep -i ibus
libusb.i686 1:0.1.3-10.fc17 @anaconda-0
libusb1.i686 1.0.9-0.6.rc1.fc17 @anaconda-0
libuser.i686 0.57.6-1.fc17 @anaconda-0
libuser-python.i686 0.57.6-1.fc17 @anaconda-0
scribus.i686 1.4.0-5.fc17 @fedora
Please try the following and paste the oputput here. - logout/login - I don't understand ibus but I'd like to make sure there are no leftovers in the current session $ echo $DISPLAY $ python -c 'from gtk.gdk import Screen' As I've found out thanks to #808789 , $DISPLAY is different depending on if a program is started by Nautilus or by someone else (and I typically start consoles by Nautilus). So, I did it twice: $ echo $DISPLAY :0.0 [pedro@sundaeII ~]$ python -c 'from gtk.gdk import Screen' ** (process:21197): WARNING **: Trying to register gtype 'GMountMountFlags' as enum when in fact it is of type 'GFlags' ** (process:21197): WARNING **: Trying to register gtype 'GDriveStartFlags' as enum when in fact it is of type 'GFlags' ** (process:21197): WARNING **: Trying to register gtype 'GSocketMsgFlags' as enum when in fact it is of type 'GFlags' Gtk-Message: Failed to load module "pk-gtk-module" $ -------------------------------- $ echo $DISPLAY :0 $ python -c 'from gtk.gdk import Screen' ** (process:21259): WARNING **: Trying to register gtype 'GMountMountFlags' as enum when in fact it is of type 'GFlags' ** (process:21259): WARNING **: Trying to register gtype 'GDriveStartFlags' as enum when in fact it is of type 'GFlags' ** (process:21259): WARNING **: Trying to register gtype 'GSocketMsgFlags' as enum when in fact it is of type 'GFlags' Gtk-Message: Failed to load module "pk-gtk-module" $ So pygtk appears to be functional.... How about trying gtg again in both cases ? $ echo $DISPLAY; gtg :0 ** (process:1667): WARNING **: Trying to register gtype 'GMountMountFlags' as enum when in fact it is of type 'GFlags' ** (process:1667): WARNING **: Trying to register gtype 'GDriveStartFlags' as enum when in fact it is of type 'GFlags' ** (process:1667): WARNING **: Trying to register gtype 'GSocketMsgFlags' as enum when in fact it is of type 'GFlags' Gtk-Message: Failed to load module "pk-gtk-module" /usr/lib/python2.7/site-packages/GTG/taskbrowser/browser.py:2005: Warning: cannot register existing type `GdkWindow' gtk.main() /usr/lib/python2.7/site-packages/GTG/taskbrowser/browser.py:2005: Warning: g_once_init_leave: assertion `result != 0' failed gtk.main() /usr/lib/python2.7/site-packages/GTG/taskbrowser/browser.py:2005: GtkWarning: gdk_cairo_create: assertion `GDK_IS_WINDOW (window)' failed gtk.main() Segmentation fault (core dumped) ------------------------------------------------ $ echo $DISPLAY; gtg :0.0 ** (process:1812): WARNING **: Trying to register gtype 'GMountMountFlags' as enum when in fact it is of type 'GFlags' ** (process:1812): WARNING **: Trying to register gtype 'GDriveStartFlags' as enum when in fact it is of type 'GFlags' ** (process:1812): WARNING **: Trying to register gtype 'GSocketMsgFlags' as enum when in fact it is of type 'GFlags' Gtk-Message: Failed to load module "pk-gtk-module" /usr/lib/python2.7/site-packages/GTG/taskbrowser/browser.py:2005: Warning: cannot register existing type `GdkWindow' gtk.main() /usr/lib/python2.7/site-packages/GTG/taskbrowser/browser.py:2005: Warning: g_once_init_leave: assertion `result != 0' failed gtk.main() /usr/lib/python2.7/site-packages/GTG/taskbrowser/browser.py:2005: GtkWarning: gdk_cairo_create: assertion `GDK_IS_WINDOW (window)' failed gtk.main() Segmentation fault (core dumped) It's not PyGTK: $ wget http://www.pygtk.org/pygtk2tutorial/examples/helloworld.py --2012-05-11 14:18:18-- http://www.pygtk.org/pygtk2tutorial/examples/helloworld.py Resolving www.pygtk.org... 209.132.180.176 Connecting to www.pygtk.org|209.132.180.176|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 3093 (3.0K) [text/plain] Saving to: `helloworld.py' 100%[======================================>] 3,093 --.-K/s in 0s 2012-05-11 14:18:18 (94.7 MB/s) - `helloworld.py' saved [3093/3093] $ python helloworld.py ** (process:1863): WARNING **: Trying to register gtype 'GMountMountFlags' as enum when in fact it is of type 'GFlags' ** (process:1863): WARNING **: Trying to register gtype 'GDriveStartFlags' as enum when in fact it is of type 'GFlags' ** (process:1863): WARNING **: Trying to register gtype 'GSocketMsgFlags' as enum when in fact it is of type 'GFlags' Gtk-Message: Failed to load module "pk-gtk-module" Hello World destroy signal occurred Well I also can't reproduce the issue, and I've just tried the latest f17-branched nightly live cd compose in a vm. Installed gtg. Ran without issues. Sorry but I am at a loss here. Perhaps you could do a $ strace -ff -e open -o gtg-opencalls.log gtg and attach the gtg-opencalls.log file - perhaps some stray python library in a non standard location superseeds the ones from the distribution ? as a last resort I would do a rpm -Va to check if the files in the filesystem match the rpmdb./ Are you on x86? I wanted to test on a x86_64 but still haven't done it (most devs seem to be running x86_64 nowadays) Created attachment 583861 [details]
strace -ff -e open -o gtg-opencalls.log gtg
Created attachment 583862 [details]
rpm -Va output
I've tried both x86 and x86_64 livecds in a vm. Staring for the past 10 minutes at the open log but I I can spot any significant difference , sorry. I am done for the day. Ok, thank you for your help :) If you have uninstalled all ibus packages, removing /usr/share/themes/Adwaita/gtk-2.0/gtkrc will allow GTG to start. If you have ibus installed, it will crash somewhere else. The backtraces and dso lists indicate that both libgdk-x11-2.0.so.0.2400.10 from gtk2 and libgdk-3.so.0.400.1 from gtk3 have been loaded - gdk3 seems to have been dragged in by clutter. Since the GDK backend was enabled in clutter-1.10.0-2, clutter requires gdk from gtk3 - and you can't mix both gtk2 and gtk3 in the same process. Ok...... but could you explain, if you don't mind: * why I can start gtg by removing ibus* and deleting /usr/share/themes/Adwaita/gtk-2.0/gtkrc ? * why it works on "both x86 and x86_64 livecds in a vm"? (In reply to comment #28) > Ok...... but could you explain, if you don't mind: > * why I can start gtg by removing ibus* and deleting > /usr/share/themes/Adwaita/gtk-2.0/gtkrc ? > * why it works on "both x86 and x86_64 livecds in a vm"? I would if I could! Deleting Adwaita/gtk-2.0/gtkrc means the clearlooks gtk2 engine won't be used. Anyway, I have discovered that you can launch gtg with the Adwaita gtk2 theme if you don't have pyclutter installed (I have also just discovered nothing on my system needed pyclutter anymore). Alternatively, you can delete: /usr/lib/python2.7/site-packages/GTG/plugins/geolocalized_tasks/ /usr/lib/python2.7/site-packages/GTG/plugins/geolocalized-tasks.gtg-plugin gtg doesn't require pyclutter or all the other stuff that would be needed for the geolocalized tasks plugin, which looks like the only thing in gtg that uses clutter. BINGO! Probably pyclutter isn't installed by default! Chaging I meant "changing the title"... Thanks for the diagnosis, Edward Sheldrake!! P.S.: possibly the bug is in pyclutter and not GTG...? (In reply to comment #31) > I meant "changing the title"... > > Thanks for the diagnosis, Edward Sheldrake!! > > P.S.: possibly the bug is in pyclutter and not GTG...? Nope, pyclutter uses gtk3. If gtg is loading it for some reason it's likely gtg is at fault. The reason you likely don't see it in a VM is because gnome is probably running in fallback mode where clutter isn't used. Thanks for the diagnosis, Edward. I must've been blind.. This whole py+clutter+gtk(2|3) fiasco could have been avoided on the clutter/pyclutter side, but that's already water under the bridge. Moving the bug back to gtg, where one approach to deal with is to ignore it and instruct users to remove pyclutter. Or disable the geolocalized_tasks plugin if they for some reason need pyclutter. Another is to remove the geolocalized_tasks plugin in an update. gtg-0.2.4-7.fc17 has been submitted as an update for Fedora 17. https://admin.fedoraproject.org/updates/gtg-0.2.4-7.fc17 Package gtg-0.2.4-7.fc17: * should fix your issue, * was pushed to the Fedora 17 testing repository, * should be available at your local mirror within two days. Update it with: # su -c 'yum update --enablerepo=updates-testing gtg-0.2.4-7.fc17' as soon as you are able to. Please go to the following url: https://admin.fedoraproject.org/updates/FEDORA-2012-9494/gtg-0.2.4-7.fc17 then log in and leave karma (feedback). gtg-0.2.4-7.fc17 has been pushed to the Fedora 17 stable repository. If problems still persist, please make note of it in this bug report. |