priam 0.1.2 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/VERSION +1 -1
- data/lib/priam/command/get.rb +30 -14
- data/lib/priam/core/common.rb +1 -1
- data/priam.gemspec +2 -2
- data/spec/lib/priam/core/common_spec.rb +2 -1
- metadata +40 -40
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.3
|
data/lib/priam/command/get.rb
CHANGED
@@ -9,6 +9,8 @@ module Priam::Command
|
|
9
9
|
super_column = params[:super_column]
|
10
10
|
name = params[:value_column]
|
11
11
|
with_key_flag = params[:with_key_flag]
|
12
|
+
weight_second = params[:weight_second]
|
13
|
+
retry_max_count = params[:retry_max_count]
|
12
14
|
|
13
15
|
client = Cassandra.new(keyspace, "#{host}:#{port}")
|
14
16
|
|
@@ -26,21 +28,35 @@ module Priam::Command
|
|
26
28
|
next
|
27
29
|
end
|
28
30
|
|
29
|
-
|
31
|
+
retry_count = 0
|
32
|
+
begin
|
33
|
+
record = Priam.get_column(client, column_family, super_column, key, params)
|
30
34
|
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
35
|
+
if with_key_flag
|
36
|
+
output_stream.print "#{key}\t"
|
37
|
+
end
|
38
|
+
|
39
|
+
if name then
|
40
|
+
output_stream.puts "#{record[name]}"
|
41
|
+
else
|
42
|
+
output_stream.puts record.to_json
|
43
|
+
end
|
44
|
+
count += 1
|
45
|
+
if count % 10 == 0 then
|
46
|
+
Priam.logger.info " GET [#{key_list.join(',')}]"
|
47
|
+
key_list.clear
|
48
|
+
end
|
49
|
+
retry_count = 0
|
50
|
+
rescue Exception=>e
|
51
|
+
if retry_count < retry_max_count
|
52
|
+
Priam.logger.warn("(EXCEPTION)#{e.message}(#{e.class.name}): #{e.backtrace.map{|s| " #{s}"}.join("\n")}")
|
53
|
+
Priam.logger.warn("retry(#{retry_count})")
|
54
|
+
retry_count += 1
|
55
|
+
sleep(weight_second)
|
56
|
+
retry
|
57
|
+
else
|
58
|
+
raise e
|
59
|
+
end
|
44
60
|
end
|
45
61
|
end
|
46
62
|
|
data/lib/priam/core/common.rb
CHANGED
data/priam.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "priam"
|
8
|
-
s.version = "0.1.
|
8
|
+
s.version = "0.1.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"]
|
12
|
-
s.date = "2013-
|
12
|
+
s.date = "2013-03-27"
|
13
13
|
s.description = "Command-base client for Cassandra."
|
14
14
|
s.email = "haracane@gmail.com"
|
15
15
|
s.executables = ["priam"]
|
@@ -9,7 +9,8 @@ describe Priam::Core::Common do
|
|
9
9
|
result[:port].should == 9160
|
10
10
|
result[:raise_exception_flag].should == false
|
11
11
|
result[:value_column].should == nil
|
12
|
-
result[:retry_max_count].should ==
|
12
|
+
result[:retry_max_count].should == 5
|
13
|
+
result[:weight_second].should == 1
|
13
14
|
result[:check_exist_flag].should == false
|
14
15
|
result[:output_keys_flag].should == false
|
15
16
|
result[:replication_factor].should == 1
|
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: 29
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
9
|
+
- 3
|
10
|
+
version: 0.1.3
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Kenji Hara
|
@@ -15,10 +15,9 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2013-
|
18
|
+
date: 2013-03-27 00:00:00 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
|
-
prerelease: false
|
22
21
|
requirement: &id001 !ruby/object:Gem::Requirement
|
23
22
|
none: false
|
24
23
|
requirements:
|
@@ -30,11 +29,11 @@ dependencies:
|
|
30
29
|
- 7
|
31
30
|
- 0
|
32
31
|
version: 0.7.0
|
33
|
-
type: :runtime
|
34
|
-
name: thrift
|
35
32
|
version_requirements: *id001
|
36
|
-
|
33
|
+
name: thrift
|
37
34
|
prerelease: false
|
35
|
+
type: :runtime
|
36
|
+
- !ruby/object:Gem::Dependency
|
38
37
|
requirement: &id002 !ruby/object:Gem::Requirement
|
39
38
|
none: false
|
40
39
|
requirements:
|
@@ -46,11 +45,11 @@ dependencies:
|
|
46
45
|
- 7
|
47
46
|
- 1
|
48
47
|
version: 0.7.1
|
49
|
-
type: :runtime
|
50
|
-
name: thrift_client
|
51
48
|
version_requirements: *id002
|
52
|
-
|
49
|
+
name: thrift_client
|
53
50
|
prerelease: false
|
51
|
+
type: :runtime
|
52
|
+
- !ruby/object:Gem::Dependency
|
54
53
|
requirement: &id003 !ruby/object:Gem::Requirement
|
55
54
|
none: false
|
56
55
|
requirements:
|
@@ -62,11 +61,11 @@ dependencies:
|
|
62
61
|
- 2
|
63
62
|
- 0
|
64
63
|
version: 0.2.0
|
65
|
-
type: :runtime
|
66
|
-
name: simple_uuid
|
67
64
|
version_requirements: *id003
|
68
|
-
|
65
|
+
name: simple_uuid
|
69
66
|
prerelease: false
|
67
|
+
type: :runtime
|
68
|
+
- !ruby/object:Gem::Dependency
|
70
69
|
requirement: &id004 !ruby/object:Gem::Requirement
|
71
70
|
none: false
|
72
71
|
requirements:
|
@@ -78,11 +77,11 @@ dependencies:
|
|
78
77
|
- 12
|
79
78
|
- 1
|
80
79
|
version: 0.12.1
|
81
|
-
type: :runtime
|
82
|
-
name: cassandra
|
83
80
|
version_requirements: *id004
|
84
|
-
|
81
|
+
name: cassandra
|
85
82
|
prerelease: false
|
83
|
+
type: :runtime
|
84
|
+
- !ruby/object:Gem::Dependency
|
86
85
|
requirement: &id005 !ruby/object:Gem::Requirement
|
87
86
|
none: false
|
88
87
|
requirements:
|
@@ -94,11 +93,11 @@ dependencies:
|
|
94
93
|
- 6
|
95
94
|
- 5
|
96
95
|
version: 1.6.5
|
97
|
-
type: :runtime
|
98
|
-
name: json
|
99
96
|
version_requirements: *id005
|
100
|
-
|
97
|
+
name: json
|
101
98
|
prerelease: false
|
99
|
+
type: :runtime
|
100
|
+
- !ruby/object:Gem::Dependency
|
102
101
|
requirement: &id006 !ruby/object:Gem::Requirement
|
103
102
|
none: false
|
104
103
|
requirements:
|
@@ -110,11 +109,11 @@ dependencies:
|
|
110
109
|
- 8
|
111
110
|
- 0
|
112
111
|
version: 2.8.0
|
113
|
-
type: :development
|
114
|
-
name: rspec
|
115
112
|
version_requirements: *id006
|
116
|
-
|
113
|
+
name: rspec
|
117
114
|
prerelease: false
|
115
|
+
type: :development
|
116
|
+
- !ruby/object:Gem::Dependency
|
118
117
|
requirement: &id007 !ruby/object:Gem::Requirement
|
119
118
|
none: false
|
120
119
|
requirements:
|
@@ -125,11 +124,11 @@ dependencies:
|
|
125
124
|
- 3
|
126
125
|
- 12
|
127
126
|
version: "3.12"
|
128
|
-
type: :development
|
129
|
-
name: rdoc
|
130
127
|
version_requirements: *id007
|
131
|
-
|
128
|
+
name: rdoc
|
132
129
|
prerelease: false
|
130
|
+
type: :development
|
131
|
+
- !ruby/object:Gem::Dependency
|
133
132
|
requirement: &id008 !ruby/object:Gem::Requirement
|
134
133
|
none: false
|
135
134
|
requirements:
|
@@ -141,11 +140,11 @@ dependencies:
|
|
141
140
|
- 0
|
142
141
|
- 0
|
143
142
|
version: 1.0.0
|
144
|
-
type: :development
|
145
|
-
name: bundler
|
146
143
|
version_requirements: *id008
|
147
|
-
|
144
|
+
name: bundler
|
148
145
|
prerelease: false
|
146
|
+
type: :development
|
147
|
+
- !ruby/object:Gem::Dependency
|
149
148
|
requirement: &id009 !ruby/object:Gem::Requirement
|
150
149
|
none: false
|
151
150
|
requirements:
|
@@ -157,11 +156,11 @@ dependencies:
|
|
157
156
|
- 8
|
158
157
|
- 4
|
159
158
|
version: 1.8.4
|
160
|
-
type: :development
|
161
|
-
name: jeweler
|
162
159
|
version_requirements: *id009
|
163
|
-
|
160
|
+
name: jeweler
|
164
161
|
prerelease: false
|
162
|
+
type: :development
|
163
|
+
- !ruby/object:Gem::Dependency
|
165
164
|
requirement: &id010 !ruby/object:Gem::Requirement
|
166
165
|
none: false
|
167
166
|
requirements:
|
@@ -171,11 +170,11 @@ dependencies:
|
|
171
170
|
segments:
|
172
171
|
- 0
|
173
172
|
version: "0"
|
174
|
-
type: :development
|
175
|
-
name: rcov
|
176
173
|
version_requirements: *id010
|
177
|
-
|
174
|
+
name: rcov
|
178
175
|
prerelease: false
|
176
|
+
type: :development
|
177
|
+
- !ruby/object:Gem::Dependency
|
179
178
|
requirement: &id011 !ruby/object:Gem::Requirement
|
180
179
|
none: false
|
181
180
|
requirements:
|
@@ -187,11 +186,11 @@ dependencies:
|
|
187
186
|
- 7
|
188
187
|
- 0
|
189
188
|
version: 1.7.0
|
190
|
-
type: :development
|
191
|
-
name: ci_reporter
|
192
189
|
version_requirements: *id011
|
193
|
-
|
190
|
+
name: ci_reporter
|
194
191
|
prerelease: false
|
192
|
+
type: :development
|
193
|
+
- !ruby/object:Gem::Dependency
|
195
194
|
requirement: &id012 !ruby/object:Gem::Requirement
|
196
195
|
none: false
|
197
196
|
requirements:
|
@@ -203,9 +202,10 @@ dependencies:
|
|
203
202
|
- 2
|
204
203
|
- 0
|
205
204
|
version: 3.2.0
|
206
|
-
type: :development
|
207
|
-
name: flog
|
208
205
|
version_requirements: *id012
|
206
|
+
name: flog
|
207
|
+
prerelease: false
|
208
|
+
type: :development
|
209
209
|
description: Command-base client for Cassandra.
|
210
210
|
email: haracane@gmail.com
|
211
211
|
executables:
|