[Groonga-commit] droonga/droonga-engine at 5a3fc19 [master] Normalize roles to downcase

Back to archive index

YUKI Hiroshi null+****@clear*****
Wed Apr 29 12:31:20 JST 2015


YUKI Hiroshi	2015-04-29 12:31:20 +0900 (Wed, 29 Apr 2015)

  New Revision: 5a3fc19fc363856e94f9fe92073dfa3a97b2b45e
  https://github.com/droonga/droonga-engine/commit/5a3fc19fc363856e94f9fe92073dfa3a97b2b45e

  Message:
    Normalize roles to downcase

  Modified files:
    lib/droonga/cluster.rb
    lib/droonga/dispatcher.rb
    lib/droonga/node_role.rb

  Modified: lib/droonga/cluster.rb (+1 -1)
===================================================================
--- lib/droonga/cluster.rb    2015-04-29 12:20:50 +0900 (5ca6505)
+++ lib/droonga/cluster.rb    2015-04-29 12:31:20 +0900 (e81f8da)
@@ -170,7 +170,7 @@ module Droonga
     end
 
     def bounce(message)
-      role = message["targetRole"]
+      role = message["targetRole"].downcase
       logger.info("bounce: trying to bounce message to another " +
                     "node with the role: #{role}")
       raise NotStartedYet.new unless @engine_nodes

  Modified: lib/droonga/dispatcher.rb (+3 -3)
===================================================================
--- lib/droonga/dispatcher.rb    2015-04-29 12:20:50 +0900 (f7f9b64)
+++ lib/droonga/dispatcher.rb    2015-04-29 12:31:20 +0900 (92f3109)
@@ -351,9 +351,9 @@ module Droonga
     end
 
     def acceptable_role?(message)
-      message["targetRole"].nil? or
-        message["targetRole"] == NodeRole::ANY or
-        message["targetRole"] == NodeRole.mine
+      return true unless message["targetRole"]
+      role = message["targetRole"].downcase
+      role == NodeRole::ANY or role == NodeRole.mine
     end
 
     def process_input_message(message)

  Modified: lib/droonga/node_role.rb (+7 -5)
===================================================================
--- lib/droonga/node_role.rb    2015-04-29 12:20:50 +0900 (6eecb43)
+++ lib/droonga/node_role.rb    2015-04-29 12:31:20 +0900 (8995844)
@@ -20,11 +20,11 @@ require "droonga/serf/tag"
 
 module Droonga
   class NodeRole
-    SERVICE_PROVIDER   = "service-provider"
-    ABSORB_SOURCE      = "absorb-source"
-    ABSORB_DESTINATION = "absorb-destination"
+    SERVICE_PROVIDER   = "service-provider".downcase
+    ABSORB_SOURCE      = "absorb-source".downcase
+    ABSORB_DESTINATION = "absorb-destination".downcase
 
-    ANY = "any"
+    ANY = "any".downcase
 
     ROLES = [
       SERVICE_PROVIDER,
@@ -41,7 +41,8 @@ module Droonga
         if Path.serf_tags_file.exist?
           tags = Path.serf_tags_file.read
           tags = JSON.parse(tags)
-          return tags[Serf::Tag.node_role] if tags[Serf::Tag.node_role]
+          role_from_tag = tags[Serf::Tag.node_role]
+          return role_from_tag.downcase if role_from_tag
         end
         SERVICE_PROVIDER
       rescue Errno::ENOENT, JSON::ParserError
@@ -63,6 +64,7 @@ module Droonga
     end
 
     def normalize(role)
+      role = role.downcase
       role = SERVICE_PROVIDER unless valid?(role)
       role
     end
-------------- next part --------------
HTML����������������������������...
Download 



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