sdbcli 1.1.2 → 1.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/README +1 -0
- data/bin/sdbcli +19 -3
- metadata +1 -1
data/README
CHANGED
@@ -24,6 +24,7 @@ https://bitbucket.org/winebarrel/sdbcli
|
|
24
24
|
--import-replace=DOMAIN,FILE
|
25
25
|
--export=DOMAIN,FILE
|
26
26
|
--retry=NUM
|
27
|
+
--retry-interval=SECOND
|
27
28
|
shell> export AWS_ACCESS_KEY_ID='...'
|
28
29
|
shell> export AWS_SECRET_ACCESS_KEY='...'
|
29
30
|
shell> export SDB_ENDPOINT='sdb.ap-northeast-1.amazonaws.com' # or SDB_REGION=ap-northeast-1
|
data/bin/sdbcli
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
$LOAD_PATH << File.join(File.dirname(__FILE__), '..', 'lib')
|
3
3
|
|
4
|
-
Version = '1.1.
|
4
|
+
Version = '1.1.3'
|
5
5
|
HISTORY_FILE = File.join((ENV['HOME'] || ENV['USERPROFILE'] || '.'), '.sdbcli_history')
|
6
6
|
HISTSIZE = 500
|
7
7
|
SELECT_LIMIT = 2500
|
@@ -25,6 +25,7 @@ $consistent = false
|
|
25
25
|
import = nil
|
26
26
|
export = nil
|
27
27
|
import_export_retry = 3
|
28
|
+
retry_interval = 60
|
28
29
|
timeout = 60
|
29
30
|
|
30
31
|
ARGV.options do |opt|
|
@@ -39,6 +40,7 @@ ARGV.options do |opt|
|
|
39
40
|
opt.on('' , '--import-replace=DOMAIN,FILE') {|v| import = v.split(/\s*,\s*/, 2) + [true] }
|
40
41
|
opt.on('' , '--export=DOMAIN,FILE') {|v| export = v.split(/\s*,\s*/, 2) }
|
41
42
|
opt.on('' , '--retry=NUM', Integer) {|v| import_export_retry = v.to_i }
|
43
|
+
opt.on('' , '--retry-interval=SECOND', Integer) {|v| retry_interval = v.to_i }
|
42
44
|
opt.parse!
|
43
45
|
|
44
46
|
unless access_key_id and secret_access_key and sdb_endpoint
|
@@ -188,11 +190,18 @@ if export
|
|
188
190
|
begin
|
189
191
|
items = $runner.execute(query + query_expr, true, $consistent)
|
190
192
|
break
|
193
|
+
rescue SimpleDB::Error => e
|
194
|
+
if /\AServiceUnavailable:/ =~ e.message
|
195
|
+
raise e if i >= import_export_retry
|
196
|
+
else
|
197
|
+
raise e
|
198
|
+
end
|
191
199
|
rescue Timeout::Error => e
|
192
200
|
raise e if i >= import_export_retry
|
193
201
|
end
|
194
202
|
|
195
|
-
output_error("Retry...", true)
|
203
|
+
output_error("Retry... (wait %d seconds)" % retry_interval, true)
|
204
|
+
sleep retry_interval
|
196
205
|
end
|
197
206
|
|
198
207
|
break if items.empty?
|
@@ -290,11 +299,18 @@ if import
|
|
290
299
|
end
|
291
300
|
|
292
301
|
break
|
302
|
+
rescue SimpleDB::Error => e
|
303
|
+
if /\AServiceUnavailable:/ =~ e.message
|
304
|
+
raise e if i >= import_export_retry
|
305
|
+
else
|
306
|
+
raise e
|
307
|
+
end
|
293
308
|
rescue Timeout::Error => e
|
294
309
|
raise e if i >= import_export_retry
|
295
310
|
end
|
296
311
|
|
297
|
-
output_error("Retry...", true)
|
312
|
+
output_error("Retry... (wait %d seconds)" % retry_interval, true)
|
313
|
+
sleep retry_interval
|
298
314
|
end
|
299
315
|
|
300
316
|
output_error("#{rownum} #{rownum > 1 ? 'rows' : 'row'} was inputted...", true)
|