Changeset 34445 for trunk/pstamp
- Timestamp:
- Sep 18, 2012, 10:20:29 AM (14 years ago)
- File:
-
- 1 edited
-
trunk/pstamp/scripts/pstamp_checkdependent.pl (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/pstamp/scripts/pstamp_checkdependent.pl
r34238 r34445 137 137 print "skipping $command\n"; 138 138 } 139 } elsif (($it->{state} eq 'cleaned') or ($it->{state} eq ' update')) {139 } elsif (($it->{state} eq 'cleaned') or ($it->{state} eq 'goto_cleaned') or ($it->{state} eq 'update')) { 140 140 # For warp and diff stages we need to call the 'queue_update' subroutines even if the 141 141 # data_state is update in order to check the state of inputs in earlier stages in the pipeline … … 260 260 # caller will fault the jobs 261 261 return $error_code; 262 } elsif ($chip->{state} eq 'goto_cleaned') { 263 264 if ($chip->{data_state} eq 'full') { 265 # cleanup has been queued, but has not yet finished. (cleanup pantasks is probably stopped) 266 # Since this chip is in full go ahead and set the run to state update and change the label. 267 # XXX: In the very rare case that this chip run is actually in the running cleanup pantasks 268 # queue things may get confused but we can live with that 269 my $command = "$chiptool -updaterun -set_state update -chip_id $chip_id"; 270 $command .= " -set_label $rlabel" if $rlabel; 271 272 if (!$no_update) { 273 my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) = 274 run(command => $command, verbose => $verbose); 275 unless ($success) { 276 my_die("failed to change ${stage}Run $stage_id $component from goto_cleaned to update", $PS_EXIT_UNKNOWN_ERROR); 277 } 278 } else { 279 print "skipping $command\n"; 280 } 281 $queued_update = 1; 282 } 262 283 } elsif (($chip->{data_state} ne 'update') and ($chip->{data_state} ne 'full')) { 263 284 … … 344 365 my $skycell = $metadata; 345 366 367 if ($skycell->{state} eq 'goto_cleaned' and $skycell->{data_state} eq 'full') { 368 # cleanup has been queued, but hasn't been done. it's "safe" to set the state back to full 369 # XXX: seem comments in check_states_chip 370 my $command = "$warptool -updaterun -set_state update -warp_id $warp_id"; 371 $command .= " -set_label $rlabel" if $rlabel; 372 373 if (!$no_update) { 374 my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) = 375 run(command => $command, verbose => $verbose); 376 unless ($success) { 377 my_die("failed to change state of ${stage}Run $stage_id from goto_cleaned to update", $PS_EXIT_UNKNOWN_ERROR); 378 } 379 } else { 380 print "skipping $command\n"; 381 } 382 return 0; 383 } 384 346 385 # get the list of input chips for this skycell 347 386 my $command = "$warptool -scmap -warp_id $warp_id -skycell_id $skycell_id"; … … 428 467 my $skycell = $metadata; 429 468 my $skycell_id = $skycell->{skycell_id}; 469 470 if ($metadata->{state} eq 'goto_cleaned' and $metadata->{data_state} eq 'full') { 471 print "changing state of diffRun $diff_id from goto_cleaned to update. skycell $skycell_id is full\n"; 472 my $command = "$difftool -updaterun -set_state update -diff_id $diff_id"; 473 $command .= " -set_label $rlabel" if $rlabel; 474 475 if (!$no_update) { 476 my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) = 477 run(command => $command, verbose => $verbose); 478 unless ($success) { 479 my_die("failed to queue ${stage}Run $stage_id $component for update", $PS_EXIT_UNKNOWN_ERROR); 480 } 481 } else { 482 print "skipping $command\n"; 483 } 484 return 0; 485 } 430 486 431 487 if ($diff_mode == $IPP_DIFF_MODE_WARP_STACK ) {
Note:
See TracChangeset
for help on using the changeset viewer.
