Bug #2359
closedtest_threads.rb:test_list
Description
=begin
In test/ruby/test_threads.rb:
test_list errors or hangs on Sparc64 Solaris.
I think the problem is that when using native threads, loop{} starves the other threads. I can "fix" running the internal eval'd code by changing the loop{} to be loop{puts 'fubar'}. But that only works if it sends to the terminal (the io causes the thread to let go). Since it's being captured by assert_in_out_err() that doesn't really work.
A work around is to change loop{} to loop{Thread.pass} but I don't know if this still tests what it is supposed to test.
=end
Updated by docwhat (Christian Höltje) almost 15 years ago
=begin
I forgot to add that this test works in Linux 32 and 64.
=end
Updated by ujihisa (Tatsuhiro Ujihisa) over 14 years ago
- Status changed from Open to Assigned
- Assignee set to nobu (Nobuyoshi Nakada)
=begin
=end
Updated by mame (Yusuke Endoh) about 14 years ago
- Priority changed from Normal to 3
=begin
Hi,
Sorry for late reply. I had trouble setting up Sparc Solaris.
I managed to prepare it, but I found the test worked for me.
$ ./ruby test/ruby/test_thread.rb
Loaded suite test/ruby/test_thread
Started
................................
Finished in 16.655716 seconds.
32 tests, 85 assertions, 0 failures, 0 errors, 0 skips
Test run options: --seed 60800
$ file ruby
ruby: ELF 64-bit MSB executable SPARCV9 Version 1, dynamically linked, not stripped
$ uname -a
SunOS blade1000dev.home.yugui.jp 5.10 Generic_142900-03 sun4u sparc SUNW,Sun-Blade-1000
I guess there may be some race condition, but we can't debug
unreproducible issue. So the priority is set to Low.
Contribution (debugging the issue and writing a patch) is
wanted.
--
Yusuke Endoh mame@tsg.ne.jp
=end
Updated by ko1 (Koichi Sasada) over 13 years ago
- Status changed from Assigned to Closed
- % Done changed from 0 to 100
=begin
This issue was solved with changeset r29956.
Christian, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
=end