Description of problem: For some reason, upon login to the X session scim is not started up. Then when opening an application that takes input, such as a terminal or web browser, the application will take a long time to start (up to 30 seconds), and will take another period of time (10-20 seconds) to get ready to accept input. Comparing with another box running FC6 here and where scim works, there should be following processes running in my X session: /usr/lib/scim-1.0/scim-launcher -d -c simple -e all -f socket --no-stay /usr/lib/scim-1.0/scim-helper-manager /usr/lib/scim-1.0/scim-panel-gtk --display :0.0 -c socket -d --no-stay /usr/lib/scim-1.0/scim-launcher -d -c socket -e socket -f x11 scim-bridge However, on my box none of these is running. And yes, in the preferences' input method configuration I have selected "Follow the system-wide configuration [SCIM]" and have since logged out and logged in again. The system log (/var/log/messages) shows the following messages whenever I switch from one application to another: Feb 11 17:38:55 robert scim-bridge: Cannot establish the socket connection... Feb 11 17:38:55 robert scim-bridge: Failed to initialize scim Feb 11 17:38:55 robert scim-bridge: Failed to allocate the agent. Exitting... It seems the application is trying to connect to scim and fails, and this is causing the application to become unresponsive for upwards of 10 seconds. Version-Release number of selected component (if applicable): scim-1.4.4-37.fc6 For reference, here are the other installed scim components: scim-bridge-0.4.9-1.fc6 scim-bridge-gtk-0.4.9-1.fc6 scim-chewing-0.3.1-7.fc6 scim-libs-1.4.4-37.fc6 scim-pinyin-0.5.91-12.fc6 scim-qtimm-0.9.4-5 scim-tables-0.5.7-1.fc6 scim-tables-chinese-0.5.7-1.fc6 How reproducible: Login to X session with scim input method enabled. Steps to Reproduce: 1. Login to X. 2. Open a terminal. 3. Try to type input. You will have to wait 10-20 seconds for the terminal to accept input. Actual results: Delay Expected results: No delay Additional info: Naturally, switching on input methods doesn't work.
Hmm, strange. Can you try turning off IM with im-chooser, restarting X and then running "GTK_IM_MODULE=scim-bridge gedit" and "GTK_IM_MODULE=scim gedit" to see what happens. If you can attach strace output for when it is slow that would also be useful. :)
Created attachment 147886 [details] strace output strace output created by: GTK_IM_MODULE=scim-bridge strace -ostrout gedit
Tried your suggestions: 1. GTK_IM_MODULE=scim-bridge gedit gedit takes 10 seconds to appear, then another 10 seconds for the components in its UI to appear and it to accept input. terminal output as follows: Loading simple Config module ... Creating backend ... scim-launcher: tree.c:126: ReadTree: Assertion `infile' failed. Cannot establish the socket connection... Failed to initialize scim Failed to allocate the agent. Exitting... Failed to invoking the agent: No such file or directory Cannot launch the agent The messenger is now down An IOException occurred at scim_bridge_client_imcontext_set_cursor_location () Loading simple Config module ... Creating backend ... scim-launcher: tree.c:126: ReadTree: Assertion `infile' failed. Cannot establish the socket connection... Failed to initialize scim Failed to allocate the agent. Exitting... Failed to invoking the agent: No such file or directory Cannot launch the agent The messenger is now down 2. GTK_IM_MODULE=scim gedit gedit doesn't even appear. terminal output as follows: Launching a SCIM daemon with Socket FrontEnd... Loading simple Config module ... Creating backend ... scim-launcher: tree.c:126: ReadTree: Assertion `infile' failed. gedit: tree.c:126: ReadTree: Assertion `infile' failed. Launching a SCIM daemon with Socket FrontEnd... Loading simple Config module ... Creating backend ... scim-launcher: tree.c:126: ReadTree: Assertion `infile' failed. bug-buddy: tree.c:126: ReadTree: Assertion `infile' failed. 3. GTK_IM_MODULE=scim-bridge strace -ostrout gedit as in 1. above, plus the strace output as in the above attachment.
Thanks, the problem may be with connecting to the scim-bridge agent or scim socket. What is your output of "ps x | grep scim"?
Here it is: ps x | grep scim 16992 pts/0 S+ 0:00 grep scim Note that of course this is after having turned on scim with the input method chooser and having logged out and back in again.
Hmmm that is not a lot a scim processes... I currently have 6: 4646 ? Ss 0:00 /usr/lib/scim-1.0/scim-launcher -d -c simple -e all -f socket --no-stay 4673 ? Ss 0:00 /usr/lib/scim-1.0/scim-helper-manager 4674 ? Ssl 0:06 /usr/lib/scim-1.0/scim-panel-gtk --display :0.0 -c socket -d --no-stay 4676 ? Ss 0:00 /usr/lib/scim-1.0/scim-launcher -d -c socket -e socket -f x11 4773 ? S 0:04 scim-bridge 19634 ? Ss 0:00 /usr/lib/scim-1.0/scim-helper-launcher --daemon --config socket --display :0.0 anthy-imengine-helper 24a65e2b-10a8-4d4c-adc9-266678cb1a38 Sounds like something may be wrong on your machine. Have you made any particular configuration to the system? Also what locale (language) are you using on your desktop?
This is a fresh install of FC6 (I wiped out the old FC5 instead of doing an upgrade), with all packages updated to the latest versions. Immediately after the install and update, and before installing any additional stuff, the problem already appeared. I can't recall if there was any trouble between install and package update, though. I have since disabled some services that I don't use, such as ISDN, and enabled some that I do use, such as mysqld (not that I think this has any influence on scim though). Under my previous system (FC5) scim worked flawlessly. I'm using the US English UTF-8 locale (en_US.UTF-8).
If scim is crashing for you, can try try getting a gdb backtrace please? It might be useful to install scim-debuginfo for that.
I tried getting a backtrace but by the time scim exits there is no stack left to display. Here is the gdb transcript: %gdb scim GNU gdb Red Hat Linux (6.5-15.fc6rh) Copyright (C) 2006 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1". (gdb) run Starting program: /usr/bin/scim Smart Common Input Method 1.4.4 Launching a SCIM daemon with Socket FrontEnd... Loading simple Config module ... Creating backend ... scim-launcher: tree.c:126: ReadTree: Assertion `infile' failed. Launching a SCIM process with x11... Loading simple Config module ... Creating backend ... scim-launcher: tree.c:126: ReadTree: Assertion `infile' failed. SCIM has exited abnormally. Program exited with code 01. (gdb) bt No stack. Besides, there seems to be a problem with the distribution of scim-debuginfo that rpmfind finds. I installed what should be the right one for my P4 machine (scim-debuginfo-1.4.4-37.fc6.i386.rpm), but when trying to run I get an error message about wrong architecture: %/usr/lib/debug/usr/bin/scim.debug /usr/lib/debug/usr/bin/scim.debug: Exec format error. Wrong Architecture. Any idea where a working scim-debuginfo for ix86 is available? Is this actually needed to get a backtrace?
(In reply to comment #9) > scim-launcher: tree.c:126: ReadTree: Assertion `infile' failed. Can you try: $ gdb /usr/lib/scim-1.0/scim-launcher (gdb) set args -d -c simple -e all -f socket --no-stay (gdb) run > %/usr/lib/debug/usr/bin/scim.debug > /usr/lib/debug/usr/bin/scim.debug: Exec format error. Wrong Architecture. This again a bit suspicious. > Any idea where a working scim-debuginfo for ix86 is available? Is this actually > needed to get a backtrace? "yum install scim-debuginfo" should work for you.
Alright, here's the gdb output: (gdb) set args -d -c simple -e all -f socket --no-stay (gdb) run Starting program: /usr/lib/scim-1.0/scim-launcher -d -c simple -e all -f socket --no-stay Loading simple Config module ... Creating backend ... scim-launcher: tree.c:126: ReadTree: Assertion `infile' failed. Program received signal SIGABRT, Aborted. 0x00e32402 in __kernel_vsyscall () "yum install scim-debuginfo" gets me: No Match for argument: scim-debuginfo In which repository is this package? I have core, updates, extras, livna, freshrpms and macromedia configured.
Sorry, can you try with: # yum --enablerepo=updates-debuginfo install scim-debuginfo
and please try setting a breakpoint at tree.c:126 (gdb) break tree.c:126 but you run it.
Ok, here's the gdb transcript. I assume you wanted me to run this with the same commands as before, plus the breakpoint. Hope this is helpful. %gdb /usr/lib/scim-1.0/scim-launcher ...[start-up messages]... (gdb) set args -d -c simple -e all -f socket --no-stay (gdb) break tree.c:126 No source file named tree.c. Make breakpoint pending on future shared library load? (y or [n]) y Breakpoint 1 (tree.c:126) pending. (gdb) run Starting program: /usr/lib/scim-1.0/scim-launcher -d -c simple -e all -f socket --no-stay Loading simple Config module ... Creating backend ... scim-launcher: tree.c:126: ReadTree: Assertion `infile' failed. Program received signal SIGABRT, Aborted. 0x00a36402 in __kernel_vsyscall () (gdb) bt #0 0x00a36402 in __kernel_vsyscall () #1 0x43b59d40 in raise () from /lib/libc.so.6 #2 0x43b5b591 in abort () from /lib/libc.so.6 #3 0x43b5338b in __assert_fail () from /lib/libc.so.6 #4 0x0011b74c in ReadTree () from /usr/lib/libchewing.so.3 #5 0x00116292 in chewing_Init () from /usr/lib/libchewing.so.3 #6 0x00b9ed99 in ChewingIMEngineFactory::init () from /usr/lib/scim-1.0/1.4.0/IMEngine/chewing.so #7 0x00ba0c38 in ChewingIMEngineFactory::ChewingIMEngineFactory () from /usr/lib/scim-1.0/1.4.0/IMEngine/chewing.so #8 0x00ba0f05 in scim_imengine_module_create_factory () from /usr/lib/scim-1.0/1.4.0/IMEngine/chewing.so #9 0x44629c70 in scim::IMEngineModule::create_factory (this=0x942aa3c, engine=0) at scim_imengine_module.cpp:98 #10 0x445f8aa0 in CommonBackEnd (this=0x942cbf0, config=@0x804cadc, modules=@0xbfc9817c) at scim_backend.cpp:436 #11 0x08049f77 in main (argc=9, argv=0xbfc982e4) at scim_launcher.cpp:200 #12 0x43b46f2c in __libc_start_main () from /lib/libc.so.6 #13 0x08049051 in _start ()
Thanks, it is getting more interesting now. :) So it looks like it may be a problem related to scim-chewing. Could you try removing scim-chewing # rpm -e scim-chewing and check if scim can start ok without it.
Also can tell us what libchewing package you have installed?
After removing package scim-chewing now scim works without problems. 太好了! :) By the way, the libchewing library on my system is /usr/lib/libchewing.so.3.0.0 Thanks for your help. The question now remains why scim-chewing is creating problems. I don't use the chewing input method, but maybe for others this is an issue.
Fresh installed FC6 and yum installed these packages: scim-tables-0.5.7-2.fc6 scim-chewing-0.3.1-7.fc6 scim-1.4.4-37.fc6 scim-bridge-0.4.10-1.fc6 scim-pinyin-0.5.91-12.fc6 scim-tables-chinese-0.5.7-2.fc6 scim-bridge-gtk-0.4.10-1.fc6 scim-libs-1.4.4-37.fc6 scim-qtimm-0.9.4-5 which bug is not reproduceable. Closing this bug.