From: zn@... Date: 2016-09-29T13:46:36+00:00 Subject: [ruby-dev:49822] [Ruby trunk Bug#12800] YAMLStoreTest#test_thread_safe hang Issue #12800 has been updated by Kazuhiro NISHIYAMA. Description updated ---------------------------------------- Bug #12800: YAMLStoreTest#test_thread_safe hang https://bugs.ruby-lang.org/issues/12800#change-60717 * Author: Kazuhiro NISHIYAMA * Status: Closed * Priority: Normal * Assignee: Kazuhiro NISHIYAMA * ruby -v: trunk * Backport: 2.1: UNKNOWN, 2.2: UNKNOWN, 2.3: UNKNOWN ---------------------------------------- `lib/yaml/store.rb` のテストがなかったので、`test/test_pstore.rb` を元に `test/yaml/test_store.rb` を作ってみたところ、`YAMLStoreTest#test_thread_safe` で止まってしまいました。 原因を調べてみたところ、 - `PStore` は `def initialize(file, thread_safe = false)` - `YAML::Store` は `def initialize file_name, yaml_opts = {}` という違いがあるのに `YAML::Store` で (引数なしもかっこもない) `super` を呼び出していて、意図せず `thread_safe` が真になっているからだとわかりました。 r33376 での変更からのようで、`yaml_opts` も使われなくなっていたので、そのあたりも含めて直しておきます。 -- https://bugs.ruby-lang.org/