td 0.10.97 → 0.10.98

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/ChangeLog CHANGED
@@ -1,3 +1,10 @@
1
+
2
+ == 2014-02-21 version 0.10.98
3
+
4
+ * import:unfreeze: fixed NoMethodError error
5
+ * import:show uses more efficient REST API
6
+
7
+
1
8
  == 2013-12-18 version 0.10.97
2
9
 
3
10
  * import:commit accepts --wait option.
@@ -58,8 +58,7 @@ module Command
58
58
 
59
59
  client = get_client
60
60
 
61
- bis = client.bulk_imports
62
- bi = bis.find {|bi| name == bi.name }
61
+ bi = client.bulk_import(name)
63
62
  unless bi
64
63
  $stderr.puts "Bulk import session '#{name}' does not exist."
65
64
  $stderr.puts "Use '#{$prog} " + Config.cl_apikey_string + "bulk_import:create <name> <db> <table>' to create a session."
@@ -97,7 +97,7 @@ module Command
97
97
 
98
98
  def import_unfreeze(op)
99
99
  require 'td/command/bulk_import'
100
- bulk_importunfreeze(op)
100
+ bulk_import_unfreeze(op)
101
101
  end
102
102
 
103
103
  private
@@ -127,7 +127,7 @@ module List
127
127
  LIST = []
128
128
  COMMAND = {}
129
129
  GUESS = {}
130
- HELP_EXCLUDE = [/^help/, /^account/, /^aggr/, /^update/, /^user/, /^acl/]
130
+ HELP_EXCLUDE = [/^help/, /^account/, /^update/, /^user/, /^acl/]
131
131
  USAGE_EXCLUDE = [/bulk_import:upload_part\z/, /bulk_import:delete_part\z/]
132
132
 
133
133
  def self.add_list(name, args, description, *examples)
@@ -308,15 +308,6 @@ module List
308
308
  add_list 'acl:revoke', %w[subject action scope], 'Revoke an access control'
309
309
  # TODO acl:test
310
310
 
311
- add_list 'aggr:list', %w[], 'Show list of aggregation schemas'
312
- add_list 'aggr:show', %w[name], 'Describe a aggregation schema'
313
- add_list 'aggr:create', %w[name relation_key], 'Create a aggregation schema'
314
- add_list 'aggr:delete', %w[name], 'Delete a aggregation schema'
315
- add_list 'aggr:add-log', %w[name db table entry_name o1_key? o2_key? o3_key?], 'Add a log aggregation entry'
316
- add_list 'aggr:add-attr', %w[name db table entry_name method_name parameters_?], 'Add an attribute aggregation entry'
317
- add_list 'aggr:del-log', %w[name entry_name], 'Delete a log aggregation entry'
318
- add_list 'aggr:del-attr', %w[name entry_name], 'Delete an attribute aggregation entry'
319
-
320
311
  add_list 'server:status', %w[], 'Show status of the Treasure Data server'
321
312
 
322
313
  add_list 'sample:apache', %w[path.json], 'Create a sample log file'
@@ -375,9 +366,6 @@ module List
375
366
  add_alias 'acl', 'acl:list'
376
367
  add_alias 'acls', 'acl:list'
377
368
 
378
- add_alias 'aggr', 'aggr:show'
379
- add_alias 'aggrs', 'aggr:list'
380
-
381
369
  add_alias 'apikey', 'apikey:show'
382
370
  add_alias 'server', 'server:status'
383
371
  add_alias 'sample', 'sample:apache'
@@ -23,7 +23,7 @@ module Command
23
23
  end
24
24
  type = s.to_sym
25
25
  }
26
- op.on('--primary-key PRIMARY_KEY_AND_TYPE', '[primary key]:[primary key type]') {|s|
26
+ op.on('--primary-key PRIMARY_KEY_AND_TYPE', '[primary key]:[primary key type(int or string)]') {|s|
27
27
  unless /\A[\w]+:(string|int)\z/ =~ s
28
28
  $stderr.puts "--primary-key PRIMARY_KEY_AND_TYPE is required, and should be in the format [primary key]:[primary key type]"
29
29
  exit 1
data/lib/td/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module TreasureData
2
2
 
3
- VERSION = '0.10.97'
3
+ VERSION = '0.10.98'
4
4
 
5
5
  end
data/td.gemspec CHANGED
@@ -20,7 +20,7 @@ Gem::Specification.new do |gem|
20
20
  gem.add_dependency "yajl-ruby", "~> 1.1.0"
21
21
  gem.add_dependency "hirb", ">= 0.4.5"
22
22
  gem.add_dependency "parallel", "~> 0.6.1"
23
- gem.add_dependency "td-client", "~> 0.8.56"
23
+ gem.add_dependency "td-client", "~> 0.8.57"
24
24
  gem.add_dependency "td-logger", "~> 0.3.21"
25
25
  gem.add_dependency "rubyzip", "~> 0.9.9"
26
26
  gem.add_development_dependency "rake", "~> 0.9"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: td
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.97
4
+ version: 0.10.98
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-12-18 00:00:00.000000000 Z
12
+ date: 2014-02-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: msgpack
@@ -112,7 +112,7 @@ dependencies:
112
112
  requirements:
113
113
  - - ~>
114
114
  - !ruby/object:Gem::Version
115
- version: 0.8.56
115
+ version: 0.8.57
116
116
  type: :runtime
117
117
  prerelease: false
118
118
  version_requirements: !ruby/object:Gem::Requirement
@@ -120,7 +120,7 @@ dependencies:
120
120
  requirements:
121
121
  - - ~>
122
122
  - !ruby/object:Gem::Version
123
- version: 0.8.56
123
+ version: 0.8.57
124
124
  - !ruby/object:Gem::Dependency
125
125
  name: td-logger
126
126
  requirement: !ruby/object:Gem::Requirement
@@ -237,7 +237,6 @@ files:
237
237
  - lib/td.rb
238
238
  - lib/td/command/account.rb
239
239
  - lib/td/command/acl.rb
240
- - lib/td/command/aggr.rb
241
240
  - lib/td/command/apikey.rb
242
241
  - lib/td/command/bulk_import.rb
243
242
  - lib/td/command/common.rb
@@ -289,18 +288,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
289
288
  - - ! '>='
290
289
  - !ruby/object:Gem::Version
291
290
  version: '0'
292
- segments:
293
- - 0
294
- hash: -1410145252245092295
295
291
  required_rubygems_version: !ruby/object:Gem::Requirement
296
292
  none: false
297
293
  requirements:
298
294
  - - ! '>='
299
295
  - !ruby/object:Gem::Version
300
296
  version: '0'
301
- segments:
302
- - 0
303
- hash: -1410145252245092295
304
297
  requirements: []
305
298
  rubyforge_project:
306
299
  rubygems_version: 1.8.23
@@ -317,3 +310,4 @@ test_files:
317
310
  - spec/spec_helper.rb
318
311
  - spec/td/helpers_spec.rb
319
312
  - spec/td/version_spec.rb
313
+ has_rdoc: false
@@ -1,208 +0,0 @@
1
-
2
- module TreasureData
3
- module Command
4
-
5
- def aggr_list(op)
6
- op.cmd_parse
7
-
8
- client = get_client
9
-
10
- ass = client.aggregation_schemas
11
-
12
- rows = []
13
- ass.each {|as|
14
- rows << {:Name=>as.name, :Relation=>as.relation_key, :Timezone=>as.timezone}
15
- }
16
-
17
- puts cmd_render_table(rows, :fields => [:Name, :Relation, :Timezone])
18
-
19
- if rows.empty?
20
- $stderr.puts "There are no aggregation schemas."
21
- $stderr.puts "Use '#{$prog} " + Config.cl_apikey_string + "aggr:create <name>' to create a aggregation schema."
22
- end
23
- end
24
-
25
- def aggr_show(op)
26
- name = op.cmd_parse
27
-
28
- client = get_client
29
-
30
- begin
31
- as = client.aggregation_schema(name)
32
- rescue
33
- cmd_debug_error $!
34
- $stderr.puts "Aggregation '#{name}' does not exist."
35
- exit 1
36
- end
37
-
38
- log_rows = []
39
- as.logs.each {|las|
40
- log_rows << {
41
- :Table=>las.table.identifier,
42
- :Name=>las.name,
43
- :o1_key=>las.okeys[0].to_s,
44
- :o2_key=>las.okeys[1].to_s,
45
- :o3_key=>las.okeys[2].to_s,
46
- :value_key=>las.value_key.to_s,
47
- :count_key=>las.count_key.to_s,
48
- :Comment=>las.comment.to_s
49
- }
50
- }
51
-
52
- attr_rows = []
53
- as.attributes.each {|aas|
54
- params = aas.parameters.to_a.map {|k,v| "#{k}=#{v}" }.join(' ')
55
- attr_rows << {
56
- :Table=>aas.table.identifier,
57
- :Name=>aas.name,
58
- :Method=>aas.method_name,
59
- :Parameters=>params,
60
- :Comment=>aas.comment.to_s,
61
- }
62
- }
63
-
64
- puts "Log entries:"
65
- puts cmd_render_table(log_rows, :fields => [:Table, :Name, :o1_key, :o2_key, :o3_key, :value_key, :count_key, :Comment], :max_width=>400)
66
-
67
- puts ''
68
-
69
- puts "Attribute entries:"
70
- puts cmd_render_table(attr_rows, :fields => [:Table, :Name, :Method, :Parameters, :Comment], :max_width=>400)
71
- end
72
-
73
- def aggr_create(op)
74
- timezone = nil
75
-
76
- op.on('-t', '--timezone TZ', 'name of the timezone (like Asia/Tokyo)') {|s|
77
- timezone = s
78
- }
79
-
80
- name, relation_key = op.cmd_parse
81
-
82
- client = get_client
83
-
84
- begin
85
- client.create_aggregation_schema(name, relation_key, {'timezone'=>timezone})
86
- rescue AlreadyExistsError
87
- cmd_debug_error $!
88
- $stderr.puts "Aggregation '#{name}' already exists."
89
- exit 1
90
- end
91
-
92
- $stderr.puts "Aggregation schema '#{name}' is created."
93
- end
94
-
95
- def aggr_delete(op)
96
- name = op.cmd_parse
97
-
98
- client = get_client
99
-
100
- client.delete_aggregation_schema(name)
101
-
102
- $stderr.puts "Aggregation schema '#{name}' is deleted."
103
- end
104
-
105
- def aggr_add_log(op)
106
- comment = nil
107
- value_key = nil
108
- count_key = nil
109
-
110
- op.on('-m', '--comment COMMENT', 'comment of this entry') {|s|
111
- comment = s
112
- }
113
- op.on('-v', '--value KEY_NAME', 'key name of value field') {|s|
114
- value_key = s
115
- }
116
- op.on('-c', '--count KEY_NAME', 'key name of count field') {|s|
117
- count_key = s
118
- }
119
-
120
- name, db_name, table_name, entry_name, o1_key, o2_key, o3_key = op.cmd_parse
121
-
122
- okeys = [o1_key, o2_key, o3_key].compact
123
-
124
- client = get_client
125
-
126
- get_table(client, db_name, table_name)
127
-
128
- begin
129
- client.create_aggregation_log_entry(name, entry_name, comment, db_name, table_name, okeys, value_key, count_key)
130
- rescue NotFoundError
131
- cmd_debug_error $!
132
- $stderr.puts "Aggregation schema '#{name}' does not exist."
133
- $stderr.puts "Use '#{$prog} " + Config.cl_apikey_string + "aggr:create #{name}' to create the aggregation schema."
134
- exit 1
135
- rescue AlreadyExistsError
136
- $stderr.puts "Aggregation log entry '#{entry_name}' already exists."
137
- exit 1
138
- end
139
-
140
- $stderr.puts "Aggregation log entry '#{entry_name}' is created."
141
- end
142
-
143
- def aggr_add_attr(op)
144
- comment = nil
145
-
146
- op.on('-m', '--comment COMMENT', 'comment of this entry') {|s|
147
- comment = s
148
- }
149
-
150
- name, db_name, table_name, entry_name, method_name, *parameters = op.cmd_parse
151
-
152
- params = {}
153
- parameters.each {|pa|
154
- k, v = pa.split('=')
155
- params[k] = v
156
- }
157
-
158
- client = get_client
159
-
160
- get_table(client, db_name, table_name)
161
-
162
- begin
163
- client.create_aggregation_attr_entry(name, entry_name, comment, db_name, table_name, method_name, params)
164
- rescue NotFoundError
165
- cmd_debug_error $!
166
- $stderr.puts "Aggregation schema '#{name}' does not exist."
167
- $stderr.puts "Use '#{$prog} " + Config.cl_apikey_string + "aggr:create #{name}' to create the aggregation schema."
168
- exit 1
169
- rescue AlreadyExistsError
170
- $stderr.puts "Aggregation attribute entry '#{entry_name}' already exists."
171
- exit 1
172
- end
173
-
174
- $stderr.puts "Aggregation attribute entry '#{entry_name}' is created."
175
- end
176
-
177
- def aggr_del_log(op)
178
- name, entry_name = op.cmd_parse
179
-
180
- client = get_client
181
-
182
- begin
183
- client.delete_aggregation_log_entry(name, entry_name)
184
- rescue NotFoundError
185
- $stderr.puts "Aggregation log entry '#{entry_name}' does not exist."
186
- exit 1
187
- end
188
-
189
- $stderr.puts "Aggregation log entry '#{entry_name}' is deleted."
190
- end
191
-
192
- def aggr_del_attr(op)
193
- name, entry_name = op.cmd_parse
194
-
195
- client = get_client
196
-
197
- begin
198
- client.delete_aggregation_attr_entry(name, entry_name)
199
- rescue NotFoundError
200
- $stderr.puts "Aggregation log entry '#{entry_name}' does not exist."
201
- exit 1
202
- end
203
-
204
- $stderr.puts "Aggregation log entry '#{entry_name}' is deleted."
205
- end
206
-
207
- end
208
- end