From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on dcvr.yhbt.net X-Spam-Level: * X-Spam-ASN: AS33070 50.56.128.0/17 X-Spam-Status: No, score=1.7 required=3.0 tests=AWL,HK_RANDOM_FROM, MSGID_FROM_MTA_HEADER,RDNS_NONE shortcircuit=no autolearn=no version=3.3.2 Path: news.gmane.org!not-for-mail From: Eric Wong Newsgroups: gmane.comp.lang.ruby.rainbows.general Subject: Re: HUP restart is delayed by 2 minutes Date: Wed, 29 Jan 2014 22:03:52 +0000 Message-ID: <20140129220352.GA24393@dcvr.yhbt.net> References: <52E89997.6020504@rightscale.com> <20140129070259.GA5938@dcvr.yhbt.net> <52E8AD1B.8090009@rightscale.com> <20140129083147.GA26652@dcvr.yhbt.net> <52E9607A.60107@rightscale.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1391033221 3093 80.91.229.3 (29 Jan 2014 22:07:01 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 29 Jan 2014 22:07:01 +0000 (UTC) Cc: Thorsten von Eicken To: Rainbows! list Original-X-From: rainbows-talk-bounces-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org Wed Jan 29 23:07:09 2014 Return-path: Envelope-to: gclrrg-rainbows-talk@m.gmane.org X-Original-To: rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org Delivered-To: rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org Content-Disposition: inline In-Reply-To: <52E9607A.60107-nkzjiHSqi6rZJqsBc5GL+g@public.gmane.org> User-Agent: Mutt/1.5.21 (2010-09-15) X-BeenThere: rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: rainbows-talk-bounces-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org Errors-To: rainbows-talk-bounces-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org X-Broken-Reverse-DNS: no host name found for IP address 50.56.192.79 Xref: news.gmane.org gmane.comp.lang.ruby.rainbows.general:585 Archived-At: Received: from [50.56.192.79] (helo=rubyforge.org) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1W8dHo-0004BM-Nf for gclrrg-rainbows-talk@m.gmane.org; Wed, 29 Jan 2014 23:07:08 +0100 Received: from localhost.localdomain (localhost [127.0.0.1]) by rubyforge.org (Postfix) with ESMTP id 4A1C6263089; Wed, 29 Jan 2014 22:07:09 +0000 (UTC) Received: from dcvr.yhbt.net (dcvr.yhbt.net [64.71.152.64]) by rubyforge.org (Postfix) with ESMTP id 39514263086 for ; Wed, 29 Jan 2014 22:03:54 +0000 (UTC) Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 112F1216F6; Wed, 29 Jan 2014 22:03:53 +0000 (UTC) Thanks! Can you try this? Sorry I haven't maintained EM support well, I forgot some versions were broken under Ruby 2.x :x (also "gem install --pre -v 4.6.0.4.g4108 rainbows" should work) --- a/lib/rainbows/event_machine.rb +++ b/lib/rainbows/event_machine.rb @@ -88,7 +88,17 @@ module Rainbows::EventMachine raise RuntimeError, "EM @conns instance variable not accessible!" Rainbows::EventMachine::Server.const_set(:CUR, conns) Rainbows.at_quit do - EM.next_tick { conns.each_value { |c| client_class === c and c.quit } } + EM.next_tick do + LISTENERS.clear + conns.each_value do |c| + case c + when client_class + c.quit + when Rainbows::EventMachine::Server + c.detach + end + end + end end EM.add_periodic_timer(1) do EM.stop if ! Rainbows.tick && conns.empty? && EM.reactor_running? _______________________________________________ Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org http://rubyforge.org/mailman/listinfo/rainbows-talk Do not quote signatures (like this one) or top post when replying