- Timestamp:
- Mar 5, 2012, 5:19:48 PM (14 years ago)
- Location:
- branches/meh_branches/ppstack_test
- Files:
-
- 3 edited
-
. (modified) (1 prop)
-
pstamp/scripts (modified) (1 prop)
-
pstamp/scripts/pstamp_checkdependent.pl (modified) (10 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/meh_branches/ppstack_test
- Property svn:mergeinfo changed
-
branches/meh_branches/ppstack_test/pstamp/scripts
- Property svn:mergeinfo set to
-
branches/meh_branches/ppstack_test/pstamp/scripts/pstamp_checkdependent.pl
r30879 r33415 117 117 } 118 118 } 119 120 # magic is no longer rquired 121 $need_magic = 0; 122 $magic_ok = 1; 119 123 my $status = 0; 120 if ((($it->{state} eq 'full') or ($it->{state} eq 'update')) and ($it->{data_state} eq 'full') 121 and (!$need_magic or $magic_ok or $it->{magicked} > 0)) { 124 if ((($it->{state} eq 'full') or ($it->{state} eq 'update')) and ($it->{data_state} eq 'full')) { 122 125 123 126 # This Dependency is satisfied. All done. Release the pstampJobs … … 197 200 } 198 201 202 if (0) { 199 203 if (!$job_fault and ($stage eq 'chip')) { 200 204 # what about "error_cleaned" ? … … 210 214 } 211 215 } 216 } 212 217 213 218 if ($job_fault >= $PSTAMP_FIRST_ERROR_CODE) { … … 240 245 my $state = $chip->{state}; 241 246 my $data_state = $chip->{data_state}; 247 my $fault = $chip->{fault}; 242 248 if (($state =~ /error/) or ($state =~ /purged/) or ($state =~ /scrubbed/) or ($state eq 'drop') or 243 ($data_state =~ /error/) or ($data_state =~ /purged/) or ($data_state =~ /scrubbed/) or ($data_state eq 'drop')) { 244 245 print "chipRun state is $chip->{chip_id} has state: $state data_state: $data_state cannot update\n"; 249 ($data_state =~ /error/) or ($data_state =~ /purged/) or ($data_state =~ /scrubbed/) or ($data_state eq 'drop') or 250 ($fault eq $PSTAMP_GONE)) { 251 252 print "chipRun state is $chip->{chip_id} has state: $state data_state: $data_state fault: $fault cannot update\n"; 246 253 my $error_code; 247 254 if (($state eq 'error_cleaned') or ($data_state ='error_cleaned')) { … … 253 260 # caller will fault the jobs 254 261 return $error_code; 255 } elsif ($chip->{dsRun_state} eq 'failed_revert') {256 # XXX: revert failures are rarely fixed. give up but say it's just not available not GONE257 print "magicDSRun.state = $dsRun_state for chipRun $stage_id is in state failed_revert cannot update\n";258 return $PSTAMP_NOT_AVAILABLE;259 262 } elsif (($chip->{data_state} ne 'update') and ($chip->{data_state} ne 'full')) { 260 263 … … 282 285 } elsif ($fault_count > $max_fault_count) { 283 286 print "$stage $stage_id has faulted $fault_count times. Giving up\n"; 284 $fault = $PSTAMP_GONE; 285 faultComponent('chip', $chip->{chip_id}, $chip->{class_id}, $PSTAMP_GONE); 286 return $PSTAMP_GONE; 287 # XXX: stop faulting chips for now 288 # $fault = $PSTAMP_GONE; 289 # faultComponent('chip', $chip->{chip_id}, $chip->{class_id}, $PSTAMP_GONE); 290 $fault = $PSTAMP_NOT_AVAILABLE; 291 return $fault; 287 292 } 288 293 # fault the dependent 289 294 my_die("chip $chip->{chip_id} $chip->{class_id} faulted: $chip->{fault}", $chip->{fault}); 290 } elsif ($chip->{dsFile_fault} eq $PSTAMP_GONE) { 291 print STDERR "magicDSFile $chip->{magic_ds_id} $chip->{chip_id} $chip->{class_id} is GONE"; 292 return $PSTAMP_GONE; 293 } elsif ($chip->{dsFile_fault} and ($chip->{dsFile_data_state} eq 'update')) { 294 # fault the dependent 295 my_die("magicDSFile $chip->{magic_ds_id} $chip->{chip_id} $chip->{class_id} faulted: $chip->{dsFile_fault}", $chip->{dsFile_fault}); 296 } 297 } 298 299 my $status = 0; 300 if (!$queued_update) { 301 $status = check_states_magicDSRun('chip', $chip_id, \@chips, $rlabel, $need_magic, $raw_all_magicked, $magic_ds_id, $dsRun_state); 302 } 303 304 return $status; 295 } 296 } 297 298 return 0; 305 299 } 306 300 … … 321 315 # The update system currently requires that data that has been magicked be destreaked 322 316 # at chip stage so it needs magic even if the customer doesn't. 317 if (0) { 323 318 if ($metadata->{magicked} != 0) { 324 319 $need_magic = 1; 325 320 } 326 321 } 327 322 if (($state =~ /error/) or ($state =~ /purged/) or ($state =~ /scrubbed/) or ($state eq 'drop') or 328 323 ($data_state =~ /error/) or ($data_state =~ /purged/) or ($data_state =~ /scrubbed/) or ($data_state eq 'drop')) { … … 369 364 # if chip has been magicked before require it to be magicked again 370 365 # because the warp pending query requires it. 366 if (0) { 371 367 if ($chip->{magicked} < 0) { 372 368 print "Input has been destreaked so we must destreak before warping\n"; 373 369 $need_magic = 1 374 370 } 371 } 375 372 376 373 if ($need_magic and ($chip->{magicked} eq 0)) { … … 421 418 my $metadata = shift; 422 419 my $rlabel = shift; # if defined a new label for the chipRun 423 my $need_magic = shift;420 my $need_magic = 0; 424 421 425 422 my $diff_id = $metadata->{diff_id}; … … 427 424 my $skycell = $metadata; 428 425 my $skycell_id = $skycell->{skycell_id}; 429 430 # The update system currently requires that data that has been magicked be destreaked431 # at chip stage so it needs magic even if the customer doesn't.432 if ($metadata->{magicked} != 0) {433 $need_magic = 1;434 }435 426 436 427 if ($diff_mode == $IPP_DIFF_MODE_WARP_STACK ) {
Note:
See TracChangeset
for help on using the changeset viewer.
