Project

General

Profile

Actions

Bug #6272

closed

Rinda sticks on some tests

Added by naruse (Yui NARUSE) about 12 years ago. Updated about 12 years ago.

Status:
Closed
Target version:
-
ruby -v:
ruby 2.0.0dev (2012-04-08 trunk 35259) [x86_64-freebsd9.0]
Backport:
[ruby-dev:45498]

Description

Rindaが例えば以下のようにすると刺さります。

while [ yes ];do;make test-all TESTS='-v -n test_ruby_talk_264062 rinda/test_rinda.rb' RUBYOPT=-w;done

しばらく追ってみたところ、Rinda は Monitor#synchronize をすることで同期を守っているのですが、
そのテストでは時刻を Rinda::MockClock で扱い、その中で Rinda::MockClock::MyTS を用いて時刻を配信しているのですが、
この TupleSpace は複数のスレッドから触られるため、同一のスレッドからなら何度入ってもロックしない
Monitor#synchronize でも、デッドロックしてしまうからっぽい気がします。

Actions

Also available in: Atom PDF

Like0
Like0