[Groonga-commit] droonga/droonga-engine at 69ed4f3 [master] Re-introduce local run mode for absorb-data command

Back to archive index

YUKI Hiroshi null+****@clear*****
Wed Jul 23 14:38:01 JST 2014


YUKI Hiroshi	2014-07-23 14:38:01 +0900 (Wed, 23 Jul 2014)

  New Revision: 69ed4f347804ee67f951fe76da4dc6e6fd5861a0
  https://github.com/droonga/droonga-engine/commit/69ed4f347804ee67f951fe76da4dc6e6fd5861a0

  Message:
    Re-introduce local run mode for absorb-data command

  Modified files:
    bin/droonga-engine-absorb-data

  Modified: bin/droonga-engine-absorb-data (+24 -0)
===================================================================
--- bin/droonga-engine-absorb-data    2014-07-23 13:33:19 +0900 (2a1f4f4)
+++ bin/droonga-engine-absorb-data    2014-07-23 14:38:01 +0900 (f46d459)
@@ -21,12 +21,15 @@ require "open3"
 
 require "droonga/engine/version"
 require "droonga/catalog_generator"
+require "droonga/path"
+require "droonga/data_absorber"
 require "droonga/serf"
 
 options = OpenStruct.new
 options.port    = Droonga::CatalogGenerator::DEFAULT_PORT
 options.tag     = Droonga::CatalogGenerator::DEFAULT_TAG
 options.dataset = Droonga::CatalogGenerator::DEFAULT_DATASET
+options.remote  = true
 parser = OptionParser.new
 parser.version = Droonga::Engine::VERSION
 
@@ -45,6 +48,11 @@ parser.on("--port=PORT", Integer,
           "(#{options.port})") do |port|
   options.port = port
 end
+parser.on("--[no-]remote",
+          "Run command in remote node or not.",
+          "(#{options.remote})") do |remote|
+  options.remote = remote
+end
 
 parser.separator("")
 parser.separator("Data:")
@@ -78,12 +86,28 @@ end
 
 
 puts "Absorbing data..."
+if options.remote
 run_remote_command(destination_node, "absorb_data",
                    "node"    => destination_node,
                    "source"  => options.source_host,
                    "port"    => options.port,
                    "tag"     => options.tag,
                    "dataset" => options.dataset)
+else
+  puts "dataset = #{options.dataset}"
+  puts "port    = #{options.port}"
+  puts "tag     = #{options.tag}"
+  count = 0
+  Droonga::DataAbsorber.absorb(:dataset          => options.dataset,
+                               :source_host      => options.source_host,
+                               :destination_host => options.destination_host,
+                               :port             => options.port,
+                               :tag              => options.tag) do |dump|
+    count += 1
+    puts dump
+  end
+  puts "#{count} dump messages are successfully processed."
+end
 puts "Done."
 
 exit(true)
-------------- next part --------------
HTML����������������������������...
Download 



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