From 9f639eb257f7b940f16016bf548c532dc09e4911 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Tue, 27 Jul 2010 07:27:04 +0000 Subject: rev_thread_pool: stop supporting this under Ruby 1.8 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. --- Documentation/comparison.haml | 2 +- lib/rainbows/rev_thread_pool.rb | 4 ++-- t/GNUmakefile | 2 +- 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 -- cgit v1.2.3-24-ge0c7