From 520a10a654c7b3d7ff82b26b4229a15b871c313d Mon Sep 17 00:00:00 2001 From: Martin Rehfeld Date: Mon, 5 Mar 2012 11:53:19 +0100 Subject: [PATCH] only do a Conn#close on SIGTERM ~ graceful shutdown --- lib/rack/handler/mongrel2.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/rack/handler/mongrel2.rb b/lib/rack/handler/mongrel2.rb index 9c2400a..cb83091 100644 --- a/lib/rack/handler/mongrel2.rb +++ b/lib/rack/handler/mongrel2.rb @@ -14,10 +14,12 @@ def self.run(app, options = {}) conn = ::Mongrel2::Connection.new(options) running = true + graceful_shutdown = false %w(INT TERM KILL).each do | sig | Signal.trap(sig) do running = false + graceful_shutdown = (sig == 'TERM') end end @@ -59,7 +61,7 @@ def self.run(app, options = {}) exit return ensure - conn.close + conn.close if graceful_shutdown end end #def self.run