| 延續這邊這個岔開的話題,繼續回報「gcin莫名當掉」的狀況 剛剛用firefox在hyperrate打字發文的時候,按了Ctrl+B突然又再出現下面這個視窗 
 如果沒有去點那個button的話,firefox就整個死在那裡,pkill -9 gcin也沒用。一開始連其他應用程式也無法叫出,稍後是可以叫出其他應用程式,但無法使用gcin。
 點了那個莫名其妙的button之後,firefox才回復正常,gcin也才能重新使用。
 想要請教eliu兄是否還有任何可測試或取得錯誤訊息的方法。 感謝~ | 
| 抓到一個可以重複的現象了!看來應該和gcin發音後ogg123被留在行程中有點關係,請聽我如何重複:
 
 (1)啟動gcin發音功能,打開leafpad,隨便打個字讓gcin說個話。
 
 (2)開啟一個rxvt,輸入ps -e |grep ogg123,確定行程中有ogg123被留在那裡:
 winlin@~$ps -e|grep ogg18188 ?        00:00:00 ogg123
 (3)點「gcin tray icon→重新啟動gcin」
 (4)回到剛剛打字發音的那個leafpad
 此時可以發現gcin並不會自動重新出現,也無法用Ctrl+space叫出gcin。而若有其他開啟中的任何使用gtk-immodule的應用程式也會跟著當掉(如:leafpad或firefox),
 但是使用xim的程式並不會當掉(如:rxvt),只是無法使用gcin而已。
 
 
 (5)在rxvt中輸入pkill -9 ogg123 立即可解除所有使用gtk-immodule的應用程式當掉的問題,gcin也可以重新運作。
 
 看來這個當掉的問題是「ogg123被留在行程中」致使gcin無法重新啟動,進而卡死所有使用gtk-immodule的應用程式。
 小弟猜測,gcin應該是有存在一些會莫名當掉的狀況,
 只不過一般人並沒有使用發音功能(或者不會有ogg123留在行程中的問題)
 對他們而言,只不過偶爾遇到「gcin打中文到一半突然莫名重新啟動」而已,沒什麼大影響,
 但我一旦遇到gcin莫名當掉,而ogg123又阻礙gcin重新啟動,就會出現其他應用程式也都停擺的問題。
 
 總之,所以這個問題應該有2個因素在內:
 (1)gcin有時會莫名當掉(還抓不到規則)
 (2)ogg123在發音後會被留在行程中(這要問問其他gcin使用者是否也有這個狀況)
 
 
 | 
| 猜測可能與 open file descriptor 有關 ulimit -n 8192 試試看有沒有用 | 
| | eliu |  | 猜測可能與 open file descriptor 有關 ulimit -n 8192 試試看有沒有用 | 
好像沒辦法以一般使用者身份執行: winlin@~$ulimit -n 8192bash: ulimit: open files: cannot modify limit: Operation not permitted
 我的系統設成開機時讓root自動登入console 1 (Ctrl+Alt+F1那個終端機),如果把「ulimit -n 8192」加在/root/.bashrc,也可對所有使用者造成影響嗎?
 | 
| | eliu |  | 猜測可能與 open file descriptor 有關 ulimit -n 8192 試試看有沒有用 | 
ulimit已經想辦法設好了: winlin@~$ulimit -n8192
 但是重複上述步驟狀況依舊,發音後重新啟動gcin,使用gtk-immodule應用程式依舊會卡死。
 | 
| 猜測你可能有用 gcin_sound_play_overlap,就是允許多個音同時 play。   可能你的 ogg123 搭配的 sound device 在同時 play 容易當掉卡住,造成 file descriptor 用光。 把 ogg123 的問題解決,就不用管 file descriptor 的問題了。用 ulimit -n 只是延後問題出來的時間而已。   我的 ogg123 沒有這個問題。Ubuntu 有用 pulse audio,或許用 pulse audio 可以解決這個問題。   把 gcin_sound_play_overlap 關掉或者也是解決問題的辦法。 | 
| 剛才試 ubuntu 12.04 之前都沒問題的,我的 ogg123 也有卡住的問題。冏 | 
| | eliu |  | 剛才試 ubuntu 12.04 之前都沒問題的,我的 ogg123 也有卡住的問題。冏 | 
感謝老天!唯有讓eliu兄也中獎,這個問題才比較有機會被解決。囧~ | 
| 今天用五四三倉頡打字時,不小心按到「`」進入同音查詢模式,但gcin卻當掉了,並且出現下列錯誤:
 
 目前這個問題無法被重複,還找不到規則。(註:我沒有開啟發音功能)
edited: 1
   | 
| 今天意外在終端機看到這段訊息,不知道對debug有沒有幫助: winlin@~$leafpad .xinitrc 
 (leafpad:6074): Gtk-WARNING **: Unable to locate theme engine in module_path: "xfce",
 gcin_im_client_focus_in error: Broken pipe
 gcin_im_client_set_cursor_location error: Broken pipe
 
 (gcin:6084): Gtk-WARNING **: Unable to locate theme engine in module_path: "xfce",
 leafpad: can't save config file - /home/winlin/.config/leafpad/leafpadrc
 winlin@~$
 (gcin:6084): GLib-WARNING **: /build/glib2.0-Ot8bbC/glib2.0-2.36.4/./glib/giounix.c:412Error while getting flags for FD: Bad file descriptor (9)
 
 *** Error in `gcin': realloc(): invalid pointer: 0x09b58ab8 ***
   這邊還有另一段 winlin@~$leafpad .xinitrc 
 (leafpad:8423): Gtk-WARNING **: Unable to locate theme engine in module_path: "xfce",
 handle_read: Connection reset by peer
 cannot read reply from gcin server: Connection reset by peer
 
 (gcin:8891): Gtk-WARNING **: Unable to locate theme engine in module_path: "xfce",
 IMOpenIM 'gcin' failed. Maybe another XIM server is running.
 
 
 
 
edited: 1
 | 
| log 與 Too many open files 無關 | 
| eliu兄: 不妙,使用最新的gcin.tbz,剛剛當了一次,這次還蠻嚴重的。當掉時除了gcin的OSD icon又變成2個XX,tray icon變成空白,CPU被操到100%,系統變得很慢。
 而ps -e可以看到一大堆gcin留在行程裡(請看附件all_the_gcin.txt)。
 | 
|  | 
| 今天再出現時我切到Alt+F2終端機,發現下列訊息重複N遍: gcin: ../../scr/xcb_io.c :274: poll_for_event: Assertion `!xcb_xlib_threads_sequence_lost' failed.[xcb] Unknown sequence number while processing queue
 [xcb] Most likely this is a multi-thread client and XInitThread has not been called
 [xcb] Aborting, sorry for that
 附帶說明一下,今天遇到的狀況與昨天回報那個一樣,出現時,我正在使用pidgin,不知道「gcin發音功能」和「pidgin送出訊息時發出音樂」兩者是不是有衝突?
edited: 1
 | 
| 
昨天發現,即使沒有使用發音功能,每送出一次緩衝區,行程的gcin就多1隻。不論是使用詞音還是五四三倉頡都一樣。
 另一個問題是,有時五四三倉頡的自動選字和預選詞功能會消失(現在打字時就是),
 但同時間,發音功能還能正常運作(當下把發音關掉這個問題並不會解決)
 此時若切換到詞音,詞音的自動選字和預選詞功能倒也還正常,
 此時按capslock切到英數狀態的話,英數狀態的預選詞也正常。
 這次沒有使用pidgin,也沒有開啟任何會播放音樂的程式,所以應該和昨夜的假設無關。
 而且奇怪的是,雖然沒有自動選字和預選詞,這時若以shift+Enter自行加中文詞,
 這段剛加入的詞(也就是「不確定」)竟然可以出現,而且也會在「不該出現的時候」出現,
 像下面這個圖的拆碼和「不確定」完全無關,「不確定」這個詞卻會出現,
 
 更怪的是,開啟gcin設定→詞庫編輯,竟然看不到剛加入的「不確定」這個詞。
 Alt+F2終端機的訊息內容如下(重複了18遍,不確定是否有關):(gcin: 7961): Gtk-CRITICAL **: IA_gtk_widget_hide: assertion `Gtk_IS_WIDGET(widget)' failed.
 原因不明,請問eliu兄是否有什麼檢測的方法可供參考?感謝~ | 
| | winlin |  | 昨天發現,即使沒有使用發音功能,每送出一次緩衝區,行程的gcin就多1隻。不論是使用詞音還是五四三倉頡都一樣。
 | 
今天終於了解行程裡gcin為何一隻接著一隻來,直到打字當掉為止。原因在於~/.xinitrc裡的內容:
 export GCIN_OUTPUT_FILTER=$HOME/.gcin/gcin_filter_word_daily_count.shgcin &
 gcin_filter_word_daily_count.sh這個檔早就被我刪了,若有開啟發音功能,gcin一直找不到這個檔,在每送出一次緩衝區時,就會在行程留一個gcin,直到爆掉為止。
 如果讓export GCIN_OUTPUT_FILTER=找到正確的路徑,不管有沒有開啟發音功能,
 都不會在行程裡留下多餘的gcin了。
 不過...還有人在用gcin filter嗎?也許只剩我一個? |