td-client 0.8.18 → 0.8.19
Sign up to get free protection for your applications and to get access to all the features.
- data/ChangeLog +6 -0
- data/lib/td/client.rb +18 -12
- data/lib/td/client/api.rb +27 -5
- data/lib/td/client/model.rb +7 -5
- data/lib/td/client/version.rb +1 -1
- metadata +8 -8
data/ChangeLog
CHANGED
data/lib/td/client.rb
CHANGED
@@ -104,30 +104,30 @@ class Client
|
|
104
104
|
end
|
105
105
|
|
106
106
|
# => Job
|
107
|
-
def query(db_name, q, result_url=nil)
|
108
|
-
job_id = @api.hive_query(q, db_name, result_url)
|
107
|
+
def query(db_name, q, result_url=nil, priority=nil)
|
108
|
+
job_id = @api.hive_query(q, db_name, result_url, priority)
|
109
109
|
Job.new(self, job_id, :hive, q)
|
110
110
|
end
|
111
111
|
|
112
112
|
# => [Job]
|
113
113
|
def jobs(from=nil, to=nil, status=nil)
|
114
114
|
result = @api.list_jobs(from, to, status)
|
115
|
-
result.map {|job_id,type,status,query,start_at,end_at,result_url|
|
116
|
-
Job.new(self, job_id, type, query, status, nil, nil, start_at, end_at, nil, result_url)
|
115
|
+
result.map {|job_id,type,status,query,start_at,end_at,result_url,priority|
|
116
|
+
Job.new(self, job_id, type, query, status, nil, nil, start_at, end_at, nil, result_url, nil, priority)
|
117
117
|
}
|
118
118
|
end
|
119
119
|
|
120
120
|
# => Job
|
121
121
|
def job(job_id)
|
122
122
|
job_id = job_id.to_s
|
123
|
-
type, query, status, url, debug, start_at, end_at, result_url, hive_result_schema = @api.show_job(job_id)
|
124
|
-
Job.new(self, job_id, type, query, status, url, debug, start_at, end_at, nil, result_url, hive_result_schema)
|
123
|
+
type, query, status, url, debug, start_at, end_at, result_url, hive_result_schema, priority = @api.show_job(job_id)
|
124
|
+
Job.new(self, job_id, type, query, status, url, debug, start_at, end_at, nil, result_url, hive_result_schema, priority)
|
125
125
|
end
|
126
126
|
|
127
127
|
# => type:Symbol, url:String
|
128
128
|
def job_status(job_id)
|
129
|
-
type, query, status, url, debug, start_at, end_at, result_url, hive_result_schema = @api.show_job(job_id)
|
130
|
-
return query, status, url, debug, start_at, end_at, result_url, hive_result_schema
|
129
|
+
type, query, status, url, debug, start_at, end_at, result_url, hive_result_schema, priority = @api.show_job(job_id)
|
130
|
+
return query, status, url, debug, start_at, end_at, result_url, hive_result_schema, priority
|
131
131
|
end
|
132
132
|
|
133
133
|
# => result:[{column:String=>value:Object]
|
@@ -156,6 +156,12 @@ class Client
|
|
156
156
|
Job.new(self, job_id, :export, nil)
|
157
157
|
end
|
158
158
|
|
159
|
+
# => Job
|
160
|
+
def partial_delete(db_name, table_name, to, from)
|
161
|
+
job_id = @api.partial_delete(db_name, table_name, to, from)
|
162
|
+
Job.new(self, job_id, :partialdelete, nil)
|
163
|
+
end
|
164
|
+
|
159
165
|
# => nil
|
160
166
|
def create_bulk_import(name, database, table)
|
161
167
|
@api.create_bulk_import(name, database, table)
|
@@ -229,8 +235,8 @@ class Client
|
|
229
235
|
# [Schedule]
|
230
236
|
def schedules
|
231
237
|
result = @api.list_schedules
|
232
|
-
result.map {|name,cron,query,database,result_url,timezone,delay,next_time|
|
233
|
-
Schedule.new(self, name, cron, query, database, result_url, timezone, delay, next_time)
|
238
|
+
result.map {|name,cron,query,database,result_url,timezone,delay,next_time,priority|
|
239
|
+
Schedule.new(self, name, cron, query, database, result_url, timezone, delay, next_time, priority)
|
234
240
|
}
|
235
241
|
end
|
236
242
|
|
@@ -242,8 +248,8 @@ class Client
|
|
242
248
|
# [ScheduledJob]
|
243
249
|
def history(name, from=nil, to=nil)
|
244
250
|
result = @api.history(name, from, to)
|
245
|
-
result.map {|scheduled_at,job_id,type,status,query,start_at,end_at,result_url|
|
246
|
-
ScheduledJob.new(self, scheduled_at, job_id, type, query, status, nil, nil, start_at, end_at, nil, result_url)
|
251
|
+
result.map {|scheduled_at,job_id,type,status,query,start_at,end_at,result_url,priority|
|
252
|
+
ScheduledJob.new(self, scheduled_at, job_id, type, query, status, nil, nil, start_at, end_at, nil, result_url, nil, priority)
|
247
253
|
}
|
248
254
|
end
|
249
255
|
|
data/lib/td/client/api.rb
CHANGED
@@ -290,7 +290,8 @@ class API
|
|
290
290
|
start_at = m['start_at']
|
291
291
|
end_at = m['end_at']
|
292
292
|
result_url = m['result']
|
293
|
-
|
293
|
+
priority = m['priority']
|
294
|
+
result << [job_id, type, status, query, start_at, end_at, result_url, priority]
|
294
295
|
}
|
295
296
|
return result
|
296
297
|
end
|
@@ -317,7 +318,8 @@ class API
|
|
317
318
|
else
|
318
319
|
hive_result_schema = JSON.parse(hive_result_schema)
|
319
320
|
end
|
320
|
-
|
321
|
+
priority = js['priority']
|
322
|
+
return [type, query, status, url, debug, start_at, end_at, result, hive_result_schema, priority]
|
321
323
|
end
|
322
324
|
|
323
325
|
def job_result(job_id)
|
@@ -382,9 +384,10 @@ class API
|
|
382
384
|
end
|
383
385
|
|
384
386
|
# => jobId:String
|
385
|
-
def hive_query(q, db=nil, result_url=nil)
|
387
|
+
def hive_query(q, db=nil, result_url=nil, priority=nil)
|
386
388
|
params = {'query' => q}
|
387
389
|
params['result'] = result_url if result_url
|
390
|
+
params['priority'] = priority if priority
|
388
391
|
code, body, res = post("/v3/job/issue/hive/#{e db}", params)
|
389
392
|
if code != "200"
|
390
393
|
raise_error("Query failed", res)
|
@@ -409,6 +412,23 @@ class API
|
|
409
412
|
return js['job_id'].to_s
|
410
413
|
end
|
411
414
|
|
415
|
+
|
416
|
+
####
|
417
|
+
## Partial delete API
|
418
|
+
##
|
419
|
+
|
420
|
+
def partial_delete(db, table, to, from)
|
421
|
+
params = {}
|
422
|
+
params['to'] = to.to_s
|
423
|
+
params['from'] = from.to_s
|
424
|
+
code, body, res = post("/v3/table/partialdelete/#{e db}/#{e table}", params)
|
425
|
+
if code != "200"
|
426
|
+
raise_error("Partial delete failed", res)
|
427
|
+
end
|
428
|
+
js = checked_json(body, %w[job_id])
|
429
|
+
return js['job_id'].to_s
|
430
|
+
end
|
431
|
+
|
412
432
|
####
|
413
433
|
## Bulk import API
|
414
434
|
##
|
@@ -592,7 +612,8 @@ class API
|
|
592
612
|
timezone = m['timezone']
|
593
613
|
delay = m['delay']
|
594
614
|
next_time = m['next_time']
|
595
|
-
|
615
|
+
priority = m['priority']
|
616
|
+
result << [name, cron, query, database, result_url, timezone, delay, next_time, priority]
|
596
617
|
}
|
597
618
|
return result
|
598
619
|
end
|
@@ -624,7 +645,8 @@ class API
|
|
624
645
|
end_at = m['end_at']
|
625
646
|
scheduled_at = m['scheduled_at']
|
626
647
|
result_url = m['result']
|
627
|
-
|
648
|
+
priority = m['priority']
|
649
|
+
result << [scheduled_at, job_id, type, status, query, start_at, end_at, result_url, priority]
|
628
650
|
}
|
629
651
|
return result
|
630
652
|
end
|
data/lib/td/client/model.rb
CHANGED
@@ -175,7 +175,7 @@ class Job < Model
|
|
175
175
|
STATUS_KILLED = "killed"
|
176
176
|
FINISHED_STATUS = [STATUS_SUCCESS, STATUS_ERROR, STATUS_KILLED]
|
177
177
|
|
178
|
-
def initialize(client, job_id, type, query, status=nil, url=nil, debug=nil, start_at=nil, end_at=nil, result=nil, result_url=nil, hive_result_schema=nil)
|
178
|
+
def initialize(client, job_id, type, query, status=nil, url=nil, debug=nil, start_at=nil, end_at=nil, result=nil, result_url=nil, hive_result_schema=nil, priority=nil)
|
179
179
|
super(client)
|
180
180
|
@job_id = job_id
|
181
181
|
@type = type
|
@@ -188,10 +188,11 @@ class Job < Model
|
|
188
188
|
@result = result
|
189
189
|
@result_url = result_url
|
190
190
|
@hive_result_schema = hive_result_schema
|
191
|
+
@priority = priority
|
191
192
|
end
|
192
193
|
|
193
194
|
attr_reader :job_id, :type, :result_url
|
194
|
-
attr_reader :hive_result_schema
|
195
|
+
attr_reader :hive_result_schema, :priority
|
195
196
|
|
196
197
|
def wait(timeout=nil)
|
197
198
|
# TODO
|
@@ -282,7 +283,7 @@ class Job < Model
|
|
282
283
|
end
|
283
284
|
|
284
285
|
def update_status!
|
285
|
-
query, status, url, debug, start_at, end_at, result_url, hive_result_schema = @client.job_status(@job_id)
|
286
|
+
query, status, url, debug, start_at, end_at, result_url, hive_result_schema, priority = @client.job_status(@job_id)
|
286
287
|
@query = query
|
287
288
|
@status = status
|
288
289
|
@url = url
|
@@ -308,7 +309,7 @@ end
|
|
308
309
|
|
309
310
|
|
310
311
|
class Schedule < Model
|
311
|
-
def initialize(client, name, cron, query, database=nil, result_url=nil, timezone=nil, delay=nil, next_time=nil)
|
312
|
+
def initialize(client, name, cron, query, database=nil, result_url=nil, timezone=nil, delay=nil, next_time=nil, priority=nil)
|
312
313
|
super(client)
|
313
314
|
@name = name
|
314
315
|
@cron = cron
|
@@ -318,9 +319,10 @@ class Schedule < Model
|
|
318
319
|
@timezone = timezone
|
319
320
|
@delay = delay
|
320
321
|
@next_time = next_time
|
322
|
+
@priority = priority
|
321
323
|
end
|
322
324
|
|
323
|
-
attr_reader :name, :cron, :query, :database, :result_url, :timezone, :delay
|
325
|
+
attr_reader :name, :cron, :query, :database, :result_url, :timezone, :delay, :priority
|
324
326
|
|
325
327
|
def next_time
|
326
328
|
@next_time ? Time.parse(@next_time) : nil
|
data/lib/td/client/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: td-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.8.
|
4
|
+
version: 0.8.19
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-07-03 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: msgpack
|
16
|
-
requirement: &
|
16
|
+
requirement: &70143141621920 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 0.4.4
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70143141621920
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: json
|
27
|
-
requirement: &
|
27
|
+
requirement: &70143141621100 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 1.4.3
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70143141621100
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rspec
|
38
|
-
requirement: &
|
38
|
+
requirement: &70143141620160 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,7 +43,7 @@ dependencies:
|
|
43
43
|
version: 2.8.0
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70143141620160
|
47
47
|
description:
|
48
48
|
email:
|
49
49
|
executables: []
|