priam 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/lib/priam/command/get.rb +1 -34
- data/lib/priam/core/get.rb +35 -0
- data/lib/priam/core.rb +2 -1
- data/lib/priam.rb +4 -0
- data/priam.gemspec +2 -1
- metadata +4 -3
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.3
|
data/lib/priam/command/get.rb
CHANGED
@@ -1,38 +1,5 @@
|
|
1
1
|
module Priam::Command
|
2
2
|
module Get
|
3
|
-
|
4
|
-
def self.get(client, column_family, super_column, key, options={})
|
5
|
-
raise_exception_flag = options[:raise_exception_flag]
|
6
|
-
retry_max_count = options[:retry_max_count] || 0
|
7
|
-
weight_second = options[:weight_second] || 1
|
8
|
-
|
9
|
-
retry_count = 0
|
10
|
-
begin
|
11
|
-
if super_column
|
12
|
-
record = client.get(column_family, super_column, key)
|
13
|
-
else
|
14
|
-
record = client.get(column_family, key)
|
15
|
-
end
|
16
|
-
rescue Exception => e
|
17
|
-
if retry_max_count <= retry_count then
|
18
|
-
if raise_exception_flag then
|
19
|
-
raise e
|
20
|
-
else
|
21
|
-
backtrace = e.backtrace.map{|s| " #{s}"}.join("\n")
|
22
|
-
Priam.logger.warn(" #{e.message}(#{e.class.name}): #{backtrace}")
|
23
|
-
return {}
|
24
|
-
end
|
25
|
-
else
|
26
|
-
retry_count += 1
|
27
|
-
Priam.logger.warn(" #{e.message}(#{e.class.name})")
|
28
|
-
Priam.logger.info(" retry(#{retry_count})")
|
29
|
-
sleep(weight_second) if weight_second
|
30
|
-
retry
|
31
|
-
end
|
32
|
-
end
|
33
|
-
return record
|
34
|
-
end
|
35
|
-
|
36
3
|
def self.run(argv, input_stream=$stdin, output_stream=$stdout)
|
37
4
|
params = Priam::Core::Common.parse_opts(argv)
|
38
5
|
host = params[:host]
|
@@ -58,7 +25,7 @@ module Priam::Command
|
|
58
25
|
next
|
59
26
|
end
|
60
27
|
|
61
|
-
record =
|
28
|
+
record = Priam.get_column(client, column_family, super_column, key, params)
|
62
29
|
|
63
30
|
if name then
|
64
31
|
output_stream.puts "#{record[name]}"
|
@@ -0,0 +1,35 @@
|
|
1
|
+
module Priam::Core
|
2
|
+
module Get
|
3
|
+
def self.get_column(client, column_family, super_column, key, options={})
|
4
|
+
raise_exception_flag = options[:raise_exception_flag]
|
5
|
+
retry_max_count = options[:retry_max_count] || 0
|
6
|
+
weight_second = options[:weight_second] || 1
|
7
|
+
|
8
|
+
retry_count = 0
|
9
|
+
begin
|
10
|
+
if super_column
|
11
|
+
record = client.get(column_family, super_column, key)
|
12
|
+
else
|
13
|
+
record = client.get(column_family, key)
|
14
|
+
end
|
15
|
+
rescue Exception => e
|
16
|
+
if retry_max_count <= retry_count then
|
17
|
+
if raise_exception_flag then
|
18
|
+
raise e
|
19
|
+
else
|
20
|
+
backtrace = e.backtrace.map{|s| " #{s}"}.join("\n")
|
21
|
+
Priam.logger.warn(" #{e.message}(#{e.class.name}): #{backtrace}")
|
22
|
+
return {}
|
23
|
+
end
|
24
|
+
else
|
25
|
+
retry_count += 1
|
26
|
+
Priam.logger.warn(" #{e.message}(#{e.class.name})")
|
27
|
+
Priam.logger.info(" retry(#{retry_count})")
|
28
|
+
sleep(weight_second) if weight_second
|
29
|
+
retry
|
30
|
+
end
|
31
|
+
end
|
32
|
+
return record
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
data/lib/priam/core.rb
CHANGED
@@ -1 +1,2 @@
|
|
1
|
-
require "priam/core/common"
|
1
|
+
require "priam/core/common"
|
2
|
+
require "priam/core/get"
|
data/lib/priam.rb
CHANGED
@@ -2,6 +2,10 @@ require "rubygems"
|
|
2
2
|
require "cassandra"
|
3
3
|
|
4
4
|
module Priam
|
5
|
+
def self.get_column(client, column_family, super_column, key, options={})
|
6
|
+
return Priam::Core::Get.get_column(client, column_family, super_column, key, options)
|
7
|
+
end
|
8
|
+
|
5
9
|
def self.logger
|
6
10
|
if @logger.nil?
|
7
11
|
@logger = (rails_logger || default_logger)
|
data/priam.gemspec
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "priam"
|
8
|
-
s.version = "0.0.
|
8
|
+
s.version = "0.0.3"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Kenji Hara"]
|
@@ -37,6 +37,7 @@ Gem::Specification.new do |s|
|
|
37
37
|
"lib/priam/command/put.rb",
|
38
38
|
"lib/priam/core.rb",
|
39
39
|
"lib/priam/core/common.rb",
|
40
|
+
"lib/priam/core/get.rb",
|
40
41
|
"priam.gemspec",
|
41
42
|
"spec/bin/priam_spec.rb",
|
42
43
|
"spec/lib/priam/command/delete_spec.rb",
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: priam
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 25
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 3
|
10
|
+
version: 0.0.3
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Kenji Hara
|
@@ -187,6 +187,7 @@ files:
|
|
187
187
|
- lib/priam/command/put.rb
|
188
188
|
- lib/priam/core.rb
|
189
189
|
- lib/priam/core/common.rb
|
190
|
+
- lib/priam/core/get.rb
|
190
191
|
- priam.gemspec
|
191
192
|
- spec/bin/priam_spec.rb
|
192
193
|
- spec/lib/priam/command/delete_spec.rb
|