Skip to content

Commit

Permalink
Add "targetRole" field to the envelope to ignore not acceptable messages
Browse files Browse the repository at this point in the history
  • Loading branch information
piroor committed Apr 28, 2015
1 parent 66a855b commit 02f10e3
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 0 deletions.
1 change: 1 addition & 0 deletions bin/droonga-engine-join
Expand Up @@ -234,6 +234,7 @@ module Droonga

:messages_per_second => @options["records-per-second"],
:progress_interval_seconds => @options["progress-interval-seconds"],
:target_role => NodeRole::ABSORB_DESTINATION,

:client_options => {
:backend => :coolio,
Expand Down
2 changes: 2 additions & 0 deletions lib/droonga/data_absorber_client.rb
Expand Up @@ -57,6 +57,7 @@ def initialize(params)
DEFAULT_MESSAGES_PER_SECOND
@progress_interval_seconds = @params[:progress_interval_seconds] ||
DEFAULT_PROGRESS_INTERVAL_SECONDS
@target_role = @params[:target_role]

@host = @params[:host] || DEFAULT_HOST
@port = @params[:port] || DEFAULT_PORT
Expand Down Expand Up @@ -91,6 +92,7 @@ def run
"dataset" => @source_dataset,
"messagesPerSecond" => @messages_per_second,
"progressIntervalSeconds" => @progress_interval_seconds,
"targetRole" => @target_role,
},
}
client = Droonga::Client.new(destination_client_options)
Expand Down
5 changes: 5 additions & 0 deletions lib/droonga/plugins/system/absorb_data.rb
Expand Up @@ -94,6 +94,7 @@ def do_absorb(&block)
@dumper_error_message = @dumper.run(dump_options) do |message|
begin
message["dataset"] = current_dataset
message["targetRole"] = target_role if target_role
message["xSender"] = "system.absorb-data"
@messenger.forward(message,
"to" => my_node_name,
Expand Down Expand Up @@ -335,6 +336,10 @@ def current_dataset
@request.dataset
end

def target_role
@request.request["targetRole"]
end

def prepare_progress_interval_seconds
interval_seconds = @request.request["progressIntervalSeconds"] ||
DEFAULT_PROGRESS_INTERVAL_SECONDS
Expand Down

0 comments on commit 02f10e3

Please sign in to comment.