YUKI Hiroshi
null+****@clear*****
Tue Jan 6 17:23:55 JST 2015
YUKI Hiroshi 2015-01-06 17:23:55 +0900 (Tue, 06 Jan 2015) New Revision: e9d3bf34220d8602f2d6d1ec1013b8b5df72e188 https://github.com/droonga/droonga-engine/commit/e9d3bf34220d8602f2d6d1ec1013b8b5df72e188 Message: cache node names for more cases Modified files: lib/droonga/cluster.rb Modified: lib/droonga/cluster.rb (+9 -12) =================================================================== --- lib/droonga/cluster.rb 2015-01-06 17:21:53 +0900 (3debe80) +++ lib/droonga/cluster.rb 2015-01-06 17:23:55 +0900 (8e24d8c) @@ -115,27 +115,21 @@ module Droonga end def same_role_nodes - engine_nodes.select do |node| + @same_role_nodes ||= engine_nodes.select do |node| node.role == node_metadata.role - end.collect do |node| - node.name - end + end.collect(&:name) end def forwardable_nodes - engine_nodes.select do |node| + @forwardable_nodes ||= engine_nodes.select do |node| node.live? and node.role == node_metadata.role - end.collect do |node| - node.name - end + end.collect(&:name) end def writable_nodes - engine_nodes.select do |node| + @writable_nodes ||= engine_nodes.select do |node| node.writable_by?(node_metadata.role) - end.collect do |node| - node.name - end + end.collect(&:name) end def unwritable_node?(node_name) @@ -161,6 +155,9 @@ module Droonga @service_provider_nodes = nil @absorb_source_nodes = nil @absorb_destination_nodes = nil + @same_role_nodes = nil + @forwardable_nodes = nil + @writable_nodes = nil end def load_state_file -------------- next part -------------- HTML����������������������������... Download