Daijiro MORI
null+****@clear*****
Wed Aug 21 13:36:32 JST 2013
Daijiro MORI 2013-08-21 13:36:32 +0900 (Wed, 21 Aug 2013) New Revision: 76202c3412bba3bb72afaa9b16126a7d1209dcdb https://github.com/droonga/fluent-plugin-droonga/commit/76202c3412bba3bb72afaa9b16126a7d1209dcdb Message: Make use of Executor class in server.rb. Modified files: lib/droonga/executor.rb lib/droonga/server.rb Modified: lib/droonga/executor.rb (+8 -0) =================================================================== --- lib/droonga/executor.rb 2013-08-21 13:24:30 +0900 (db7eb0b) +++ lib/droonga/executor.rb 2013-08-21 13:36:32 +0900 (acedc98) @@ -55,6 +55,14 @@ module Droonga @database = @context = nil end + def unblock_queue + 3.times do |i| + super + @queue.unblock + sleep(i ** 2 * 0.1) + end + end + def add_handler(name) plugin = HandlerPlugin.new(name) @handlers << plugin.instantiate(self) Modified: lib/droonga/server.rb (+2 -18) =================================================================== --- lib/droonga/server.rb 2013-08-21 13:24:30 +0900 (1b8186f) +++ lib/droonga/server.rb 2013-08-21 13:36:32 +0900 (78b1596) @@ -19,7 +19,6 @@ require "msgpack" require "cool.io" require "groonga" -require "droonga/job_queue" require "droonga/executor" module Droonga @@ -65,19 +64,11 @@ module Droonga def initialize super - @name = config[:name] - @context = Groonga::Context.new @message_input = config[:message_input] - @database_name = config[:database] || "droonga/db" - @queue_name = config[:queue_name] || "DroongaQueue" - Droonga::JobQueue.ensure_schema(@database_name, @queue_name) @executor = Executor.new(config) end def before_run - @database =****@conte*****_database(@database_name) - @context.encoding = :none - @receiver = Receiver.new(@message_input) @receiver_thread = Thread.new do @receiver.run do |message| @@ -96,9 +87,7 @@ module Droonga $log.trace("server: after_run: receiver: done") $log.trace("server: after_run: groonga: start") - @database.close - @context.close - @database = @context = nil + @executor.shutdown $log.trace("server: after_run: groonga: done") $log.trace("server: after_run: done") @@ -112,12 +101,7 @@ module Droonga $log.trace("server: stop: receiver: stop: done") $log.trace("server: stop: queue: unblock: start") - queue = @context[@queue_name] - 3.times do |i| - super - queue.unblock - sleep(i ** 2 * 0.1) - end + @executor.unblock_queue $log.trace("server: stop: queue: unblock: done") $log.trace("server: stop: done") -------------- next part -------------- HTML����������������������������...Download