[Groonga-commit] droonga/droonga-engine at 9ea6830 [master] cache node names for more cases

Back to archive index

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: 9ea68305ae958ec5788fd62240508fafaabac058
  https://github.com/droonga/droonga-engine/commit/9ea68305ae958ec5788fd62240508fafaabac058

  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 (11f2c75)
+++ lib/droonga/cluster.rb    2015-01-06 17:23:55 +0900 (34ac48c)
@@ -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 on_change
@@ -149,6 +143,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 



More information about the Groonga-commit mailing list
Back to archive index