ruby-changes:27676
From: nagachika <ko1@a...>
Date: Tue, 12 Mar 2013 00:58:02 +0900 (JST)
Subject: [ruby-changes:27676] nagachika:r39728 (ruby_2_0_0): merge revision(s) 39688: [Backport #8065]
nagachika 2013-03-12 00:57:50 +0900 (Tue, 12 Mar 2013) New Revision: 39728 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=39728 Log: merge revision(s) 39688: [Backport #8065] * test/thread/test_queue.rb (TestQueue#test_thr_kill): reduce iterations from 2000 to 250. When running on uniprocessor systems, every th.kill needs TIME_QUANTUM_USEC time (i.e. 100msec on posix systems). Because, "r.read 1" is 3 steps operations that 1) release GVL 2) read 3) acquire gvl and (1) invoke context switch to main thread. and then, main thread's th.kill resume (1), but not (2). Thus read interrupt need TIME_QUANTUM_USEC. Then maximum iteration is 30sec/100msec = 300. Modified directories: branches/ruby_2_0_0/ Modified files: branches/ruby_2_0_0/ChangeLog branches/ruby_2_0_0/test/thread/test_queue.rb branches/ruby_2_0_0/version.h Index: ruby_2_0_0/ChangeLog =================================================================== --- ruby_2_0_0/ChangeLog (revision 39727) +++ ruby_2_0_0/ChangeLog (revision 39728) @@ -1,3 +1,15 @@ https://github.com/ruby/ruby/blob/trunk/ruby_2_0_0/ChangeLog#L1 +Tue Mar 12 00:56:19 2013 KOSAKI Motohiro <kosaki.motohiro@g...> + + * test/thread/test_queue.rb (TestQueue#test_thr_kill): reduce + iterations from 2000 to 250. When running on uniprocessor + systems, every th.kill needs TIME_QUANTUM_USEC time (i.e. + 100msec on posix systems). Because, "r.read 1" is 3 steps + operations that 1) release GVL 2) read 3) acquire gvl and + (1) invoke context switch to main thread. and then, main + thread's th.kill resume (1), but not (2). Thus read interrupt + need TIME_QUANTUM_USEC. Then maximum iteration is 30sec/100msec + = 300. + Tue Mar 12 00:53:34 2013 KOSAKI Motohiro <kosaki.motohiro@g...> * process.c (setup_communication_pipe): remove unused function. Index: ruby_2_0_0/version.h =================================================================== --- ruby_2_0_0/version.h (revision 39727) +++ ruby_2_0_0/version.h (revision 39728) @@ -1,6 +1,6 @@ https://github.com/ruby/ruby/blob/trunk/ruby_2_0_0/version.h#L1 #define RUBY_VERSION "2.0.0" #define RUBY_RELEASE_DATE "2013-03-12" -#define RUBY_PATCHLEVEL 56 +#define RUBY_PATCHLEVEL 57 #define RUBY_RELEASE_YEAR 2013 #define RUBY_RELEASE_MONTH 3 Index: ruby_2_0_0/test/thread/test_queue.rb =================================================================== --- ruby_2_0_0/test/thread/test_queue.rb (revision 39727) +++ ruby_2_0_0/test/thread/test_queue.rb (revision 39728) @@ -85,7 +85,7 @@ class TestQueue < Test::Unit::TestCase https://github.com/ruby/ruby/blob/trunk/ruby_2_0_0/test/thread/test_queue.rb#L85 bug5343 = '[ruby-core:39634]' Dir.mktmpdir {|d| timeout = 30 - total_count = 2000 + total_count = 250 begin assert_normal_exit(<<-"_eom", bug5343, {:timeout => timeout, :chdir=>d}) require "thread" @@ -98,7 +98,8 @@ class TestQueue < Test::Unit::TestCase https://github.com/ruby/ruby/blob/trunk/ruby_2_0_0/test/thread/test_queue.rb#L98 r.read 1 } queue.pop - th.kill.join + th.kill + th.join end _eom rescue Timeout::Error Property changes on: ruby_2_0_0 ___________________________________________________________________ Modified: svn:mergeinfo Merged /trunk:r39688 -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/