about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2010-07-27 07:27:04 +0000
committerEric Wong <normalperson@yhbt.net>2010-07-27 07:38:09 +0000
commit9f639eb257f7b940f16016bf548c532dc09e4911 (patch)
tree42cb8b1da1bc92b598ead4125708fcbaf7a66f56
parent3671e9b9643543510337d9c1724122ecd78780cd (diff)
downloadrainbows-9f639eb257f7b940f16016bf548c532dc09e4911.tar.gz
It hits 100% CPU usage and Rev's 1.8 support when mixed
with threads is currently suboptimal.  Unfortunately
our tests can not check for 100% CPU usage, so I had to
*gasp* confirm it by actually starting an app :x

This appears to be a fixable bug in Rev, however, and
we'll try to fix it as soon as we have time.
-rw-r--r--Documentation/comparison.haml2
-rw-r--r--lib/rainbows/rev_thread_pool.rb4
-rw-r--r--t/GNUmakefile2
3 files changed, 4 insertions, 4 deletions
diff --git a/Documentation/comparison.haml b/Documentation/comparison.haml
index afe8484..d9382bc 100644
--- a/Documentation/comparison.haml
+++ b/Documentation/comparison.haml
@@ -89,7 +89,7 @@
     %td.mod RevThreadPool
     %td.tee No
     %td.r18 Yes
-    %td.r19 Yes
+    %td.r19 No
     %td.rbx No
     %td.slow Yes
   %tr.comp_row
diff --git a/lib/rainbows/rev_thread_pool.rb b/lib/rainbows/rev_thread_pool.rb
index 5a7ff82..5e5f14a 100644
--- a/lib/rainbows/rev_thread_pool.rb
+++ b/lib/rainbows/rev_thread_pool.rb
@@ -15,8 +15,8 @@ module Rainbows
   # slow clients and applications with medium-to-slow response times
   # (I/O bound), but less suitable for sleepy applications.
   #
-  # Ruby 1.8 users are strongly advised to use Rev >= 0.3.2 to get
-  # usable performance.
+  # This concurrency model is designed for Ruby 1.9, and Ruby 1.8
+  # users are NOT advised to use this due to high CPU usage.
 
   module RevThreadPool
 
diff --git a/t/GNUmakefile b/t/GNUmakefile
index c7e78bd..1172c67 100644
--- a/t/GNUmakefile
+++ b/t/GNUmakefile
@@ -27,7 +27,6 @@ models += Rev
 models += EventMachine
 models += NeverBlock
 models += RevThreadSpawn
-models += RevThreadPool
 
 ifeq ($(RUBY_ENGINE),ruby)
   rp := )
@@ -37,6 +36,7 @@ ifeq ($(RUBY_ENGINE),ruby)
     models += FiberSpawn
     models += RevFiberSpawn
     models += FiberPool
+    models += RevThreadPool
   endif
 endif