Project

General

Profile

致命的 #291

Ruby1.8で、SerialthreadのTimeoutでクラッシュすることがある

Added by toshi_a 初音 over 9 years ago. Updated over 9 years ago.

Status:
終了
Priority:
通常
Target version:
Start date:
2011-08-25
Due date:
% Done:

100%

プラグイン名:

Description

ruby 1.9ではどうやら再現しない

/usr/lib/ruby/1.8/timeout.rb:64:in `timeout'error: ./serialthread.rb:57:in `new_thread': execution expired
from /usr/lib/ruby/1.8/timeout.rb:64:in `timeout'
from /usr/lib/ruby/1.8/timeout.rb:101:in `timeout'
from ./serialthread.rb:50:in `new_thread'
from ./serialthread.rb:48:in `initialize'
from ./serialthread.rb:48:in `new'
from ./serialthread.rb:48:in `new_thread'
from ./serialthread.rb:27:in `new'
from /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
from ./serialthread.rb:25:in `new'
from ./message.rb:327:in `add_child'
from ./message.rb:58:in `initialize'
from ./retriever.rb:51:in `new'
from ./retriever.rb:51:in `new_ifnecessary'
from {MIKUTTER_DIR}/core/utils.rb:416:in `atomic'
from /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
from {MIKUTTER_DIR}/core/utils.rb:416:in `atomic'
from ./retriever.rb:50:in `new_ifnecessary'
from {MIKUTTER_DIR}/core/utils.rb:282:in `call'
from {MIKUTTER_DIR}/core/utils.rb:282:in `result_strict'
from ./retriever.rb:46:in `new_ifnecessary'
from ./post.rb:509:in `call'
from ./post.rb:509:in `scan_rule'
from ./post.rb:535:in `parse_json'
from ./post.rb:535:in `map'
from ./post.rb:535:in `parse_json'
from ./addon/streaming.rb:105:in `__send__'
from ./addon/streaming.rb:105
from /usr/lib/ruby/1.8/set.rb:194:in `each'
from /usr/lib/ruby/1.8/set.rb:194:in `each_key'
from /usr/lib/ruby/1.8/set.rb:194:in `each'
from ./addon/streaming.rb:104
from ./addon/streaming.rb:58:in `define_together_event'
from ./addon/streaming.rb:55:in `loop'
from ./addon/streaming.rb:55:in `define_together_event'
from ./addon/streaming.rb:53:in `initialize'
from ./addon/streaming.rb:53:in `new'
from ./addon/streaming.rb:53:in `define_together_event'
from ./addon/streaming.rb:102
from ./addon/streaming.rb:8:in `initialize'
from ./addon/streaming.rb:8:in `new'
from ./addon/streaming.rb:8
from {MIKUTTER_DIR}/core/utils.rb:83:in `require'
from {MIKUTTER_DIR}/core/utils.rb:83:in `file_or_directory_require'
from {MIKUTTER_DIR}/core/utils.rb:72:in `miquire_all_files'
from {MIKUTTER_DIR}/core/utils.rb:71:in `each'
from {MIKUTTER_DIR}/core/utils.rb:71:in `miquire_all_files'
from {MIKUTTER_DIR}/core/utils.rb:66:in `miquire'
from ./addon/addon.rb:149
from {MIKUTTER_DIR}/core/utils.rb:83:in `require'
from {MIKUTTER_DIR}/core/utils.rb:83:in `file_or_directory_require'
from {MIKUTTER_DIR}/core/utils.rb:64:in `miquire'
from ./plugin/gui.rb:364
from {MIKUTTER_DIR}/core/utils.rb:83:in `require'
from {MIKUTTER_DIR}/core/utils.rb:83:in `file_or_directory_require'
from {MIKUTTER_DIR}/core/utils.rb:72:in `miquire_all_files'
from {MIKUTTER_DIR}/core/utils.rb:71:in `each'
from {MIKUTTER_DIR}/core/utils.rb:71:in `miquire_all_files'
from {MIKUTTER_DIR}/core/utils.rb:66:in `miquire'
from ./plugin/plugin.rb:397
from {MIKUTTER_DIR}/core/utils.rb:83:in `require'
from {MIKUTTER_DIR}/core/utils.rb:83:in `file_or_directory_require'
from {MIKUTTER_DIR}/core/utils.rb:64:in `miquire'
from ./watch.rb:4
from {MIKUTTER_DIR}/core/utils.rb:83:in `require'
from {MIKUTTER_DIR}/core/utils.rb:83:in `file_or_directory_require'
from {MIKUTTER_DIR}/core/utils.rb:64:in `miquire'
from {MIKUTTER_DIR}/mikutter.rb:58

#1

Updated by toshi_a 初音 over 9 years ago

(ruby1.8.7)
timeout時にしばしば無名クラスが例外として投げられることがある、原因不明。
とりあえず、クラスを明示的に指定することで回避してみる

#2

Updated by Anonymous over 9 years ago

  • Status changed from 実装待ち to 終了
  • % Done changed from 0 to 100

更新履歴 r480 で適用されました。

Also available in: Atom PDF