arvados-cli 0.1.20141001020051 → 0.1.20141006171315

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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/bin/crunch-job +13 -40
  3. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 47cf9aa2a62cb15beff76144bb02e95796887242
4
- data.tar.gz: f54ef766f3575fed9d638e2b1d62c435e70ab964
3
+ metadata.gz: 68b3a31004a457fb98b8cfdeb371c54e148dc1ff
4
+ data.tar.gz: aa6fabddda25ea6217cc38c90d6c800ba0401e4c
5
5
  SHA512:
6
- metadata.gz: 7814c28f8f66931d89d98caeeb0919a14341aba27d04da7801e3e0a45c420aacb86fa157cce11598ac7ec049955c2175533e52c244b078cb0dd60cc2968dc26f
7
- data.tar.gz: e88521696a86b63e673261fc856752ecaf5204ead6a65503321ca2b3c9b9f25b24443a39d63ee8b21963a0a83a005c9a6e724c9107ed269ce5cd01c70c700249
6
+ metadata.gz: f2b6c2ff8518e6458cb616bd97fdd3f87d20352969494a174a56b48a5e21f64d19e2749f809c964e190b0a14270657923b1635bf2167709b20b21d5222ac1144
7
+ data.tar.gz: aaaf716e41d5e6bf1910233c2bc3821b88c768097bdd5c87db53e149676ff2aa232cd8206aacdf484088d1c6d6459e8b2c41efb6577e544dfeb8538c81b7063f
data/bin/crunch-job CHANGED
@@ -153,30 +153,15 @@ if ($job_has_uuid)
153
153
  {
154
154
  $Job = $arv->{'jobs'}->{'get'}->execute('uuid' => $jobspec);
155
155
  if (!$force_unlock) {
156
- # If some other crunch-job process has grabbed this job (or we see
157
- # other evidence that the job is already underway) we exit
158
- # EX_TEMPFAIL so crunch-dispatch (our parent process) doesn't
159
- # mark the job as failed.
160
- if ($Job->{'is_locked_by_uuid'}) {
161
- Log(undef, "Job is locked by " . $Job->{'is_locked_by_uuid'});
156
+ # Claim this job, and make sure nobody else does
157
+ eval {
158
+ # lock() sets is_locked_by_uuid and changes state to Running.
159
+ $arv->{'jobs'}->{'lock'}->execute('uuid' => $Job->{'uuid'})
160
+ };
161
+ if ($@) {
162
+ Log(undef, "Error while locking job, exiting ".EX_TEMPFAIL);
162
163
  exit EX_TEMPFAIL;
163
- }
164
- if ($Job->{'state'} ne 'Queued') {
165
- Log(undef, "Job state is " . $Job->{'state'} . ", but I can only start queued jobs.");
166
- exit EX_TEMPFAIL;
167
- }
168
- if ($Job->{'success'} ne undef) {
169
- Log(undef, "Job 'success' flag (" . $Job->{'success'} . ") is not null");
170
- exit EX_TEMPFAIL;
171
- }
172
- if ($Job->{'running'}) {
173
- Log(undef, "Job 'running' flag is already set");
174
- exit EX_TEMPFAIL;
175
- }
176
- if ($Job->{'started_at'}) {
177
- Log(undef, "Job 'started_at' time is already set (" . $Job->{'started_at'} . ")");
178
- exit EX_TEMPFAIL;
179
- }
164
+ };
180
165
  }
181
166
  }
182
167
  else
@@ -281,23 +266,11 @@ foreach (@sinfo)
281
266
  @slot = sort { $a->{cpu} <=> $b->{cpu} } @slot;
282
267
 
283
268
 
284
-
285
- my $jobmanager_id;
286
- if ($job_has_uuid)
287
- {
288
- # Claim this job, and make sure nobody else does
289
- unless ($Job->update_attributes('is_locked_by_uuid' => $User->{'uuid'}) &&
290
- $Job->{'is_locked_by_uuid'} == $User->{'uuid'}) {
291
- Log(undef, "Error while updating / locking job, exiting ".EX_TEMPFAIL);
292
- exit EX_TEMPFAIL;
293
- }
294
- $Job->update_attributes('state' => 'Running',
295
- 'tasks_summary' => { 'failed' => 0,
296
- 'todo' => 1,
297
- 'running' => 0,
298
- 'done' => 0 });
299
- }
300
-
269
+ $Job->update_attributes(
270
+ 'tasks_summary' => { 'failed' => 0,
271
+ 'todo' => 1,
272
+ 'running' => 0,
273
+ 'done' => 0 });
301
274
 
302
275
  Log (undef, "start");
303
276
  $SIG{'INT'} = sub { $main::please_freeze = 1; };
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: arvados-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.20141001020051
4
+ version: 0.1.20141006171315
5
5
  platform: ruby
6
6
  authors:
7
7
  - Arvados Authors
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-01 00:00:00.000000000 Z
11
+ date: 2014-10-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: arvados
@@ -178,7 +178,7 @@ dependencies:
178
178
  - - "<"
179
179
  - !ruby/object:Gem::Version
180
180
  version: 1.0.0
181
- description: Arvados command line tools, git commit e6fbedf93f4db7325872537e36c4175c8fea0bea
181
+ description: Arvados command line tools, git commit 77e3dec8727c1fc00665531a39583c85b2c404bb
182
182
  email: gem-dev@curoverse.com
183
183
  executables:
184
184
  - arv