Prevent random test failures.

This commit is contained in:
Vít Ondruch 2013-03-22 10:09:09 +01:00
parent 1757c4302b
commit 8f31ccc919
2 changed files with 54 additions and 0 deletions

View File

@ -0,0 +1,49 @@
Index: ChangeLog
===================================================================
--- ChangeLog (revision 39727)
+++ ChangeLog (revision 39728)
@@ -1,3 +1,15 @@
+Tue Mar 12 00:56:19 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com>
+
+ * 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.
+
Sun Feb 24 15:16:00 2013 Eric Hodel <drbrain@segment7.net>
* lib/net/http.rb: Removed duplicate Accept-Encoding in Net::HTTP#get.
Index: test/thread/test_queue.rb
===================================================================
--- test/thread/test_queue.rb (revision 39727)
+++ test/thread/test_queue.rb (revision 39728)
@@ -85,7 +85,7 @@
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 @@
r.read 1
}
queue.pop
- th.kill.join
+ th.kill
+ th.join
end
_eom
rescue Timeout::Error
Property changes on: .
___________________________________________________________________
Modified: svn:mergeinfo
Merged /trunk:r39688

View File

@ -127,6 +127,9 @@ Patch14: rubygems-2.0.0-Fixes-for-empty-ruby-version.patch
# Fixes issues with wrong value of Rubygem's shebang introduced in r39267.
# https://bugs.ruby-lang.org/issues/7915
Patch15: ruby-2.0.0-revert-unexpand-exec-prefix.patch
# Fixes test_thr_kill(TestQueue) random test failure.
# https://bugs.ruby-lang.org/issues/7521
Patch16: ruby-2.0.0-p57-test_thr_kill.patch
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
Requires: ruby(rubygems) >= %{rubygems_version}
@ -390,6 +393,7 @@ Tcl/Tk interface for the object-oriented scripting language Ruby.
%patch13 -p1
%patch14 -p1
%patch15 -p1
%patch16 -p0
# Provide an example of usage of the tapset:
cp -a %{SOURCE3} .
@ -869,6 +873,7 @@ make check TESTS="-v $DISABLE_TESTS"
%changelog
* Thu Mar 21 2013 Vít Ondruch <vondruch@redhat.com> - 2.0.0.0-5
- Make Ruby buildable without rubypick.
- Prevent random test failures.
* Fri Mar 08 2013 Mamoru TASAKA <mtasaka@fedoraproject.org> - 2.0.0.0-4
- Don't mark rpm config file as %%config (fpc#259)