Changeset 30183
- Timestamp:
- Dec 26, 2010, 7:02:49 AM (15 years ago)
- Location:
- tags/ipp-20101215
- Files:
-
- 5 edited
-
ippScripts/scripts/register_imfile.pl (modified) (10 diffs, 1 prop)
-
ippTasks/nightly_science.pro (modified) (1 diff, 1 prop)
-
ippTasks/register.pro (modified) (2 diffs, 1 prop)
-
ippTools/share/regtool_pendingburntoolimfile.sql (modified) (1 diff, 1 prop)
-
ippTools/src/regtool.c (modified) (23 diffs, 1 prop)
Legend:
- Unmodified
- Added
- Removed
-
tags/ipp-20101215/ippScripts/scripts/register_imfile.pl
- Property svn:mergeinfo set to
r30145 r30183 84 84 85 85 my $cmdflags; 86 my $burntoolState Good;87 my $burntoolState ;86 my $burntoolStateTarget; 87 my $burntoolStateCurrent; 88 88 # Run ppStats on the input file 89 89 { … … 116 116 117 117 # Manually parse the burntool_state entry. 118 $burntoolState = 0;118 $burntoolStateCurrent = 0; 119 119 my $isGPC1 = 0; 120 $burntoolState Good= 0;120 $burntoolStateTarget = 0; 121 121 foreach my $line (split /\n/, $out1) { 122 122 if ($line =~ /FPA.BURNTOOL.APPLIED/) { 123 123 $line =~ s/^\s+//; 124 $burntoolState = (split /\s+/, $line)[2];124 $burntoolStateCurrent = (split /\s+/, $line)[2]; 125 125 } 126 126 if ($line =~ /FPA.CAMERA/) { … … 132 132 } 133 133 if ($isGPC1 != 1) { 134 $burntoolState = 0; # If it's not GPC1, you shouldn't have run burntool.135 } 136 elsif (($isGPC1 == 1) && ($burntoolState == 1)) {137 # print STDERR "In the good region: >>$burntoolState <<\n";134 $burntoolStateCurrent = 0; # If it's not GPC1, you shouldn't have run burntool. 135 } 136 elsif (($isGPC1 == 1) && ($burntoolStateCurrent == 1)) { 137 # print STDERR "In the good region: >>$burntoolStateCurrent<<\n"; 138 138 my $ppConfigDump_cmd = "$ppConfigDump -camera GPC1 -dump-camera -"; 139 139 my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) = … … 149 149 if ($line =~ /BURNTOOL.STATE.GOOD/) { 150 150 $line =~ s/^\s+//; 151 $burntoolState Good= (split /\s+/, $line)[2];151 $burntoolStateTarget = (split /\s+/, $line)[2]; 152 152 last; 153 153 } 154 154 } 155 $burntoolState = $burntoolStateGood; # Positive because this has the header table. 156 157 } 158 $cmdflags .= " -burntool_state $burntoolState "; 155 # XXX why was this being equated?? 156 # $burntoolState = $burntoolStateGood; # Positive because this has the header table. 157 158 } 159 $cmdflags .= " -burntool_state $burntoolStateTarget "; 159 160 } 160 161 161 162 $now_time = localtime(); 162 163 printf STDERR "\ndone with ppStats: %s\n", $now_time if $verbose; 164 printf STDERR "\nburntool state current: %d target: %d\n", $burntoolStateCurrent, $burntoolStateTarget; 163 165 164 166 # we require at a minimum: -telescope, -inst, -filelevel, -class_id, -exp_type … … 178 180 $command .= " -hostname $host" if defined $host; 179 181 $command .= " -dbname $dbname" if defined $dbname; 180 if (abs($burntoolState ) == $burntoolStateGood) {182 if (abs($burntoolStateCurrent) == $burntoolStateTarget) { 181 183 $command .= " -data_state full"; 182 184 } … … 222 224 # lock file? 223 225 # if exp_type = DARK and date > MIDNIGHT HST { wait } 224 # system("ipp_apply_burntool.pl --class_id $class_id --dateobs_begin $date_start --dateobs_end $date_end --dbname gpc1 --logfile /data/$host.0/burntool_logs/$class_id.$start_date.log"); 226 # system("ipp_apply_burntool.pl --class_id $class_id --dateobs_begin $date_start --dateobs_end $date_end --dbname gpc1 --logfile /data/$host.0/burntool_logs/$class_id.$start_date.log"); 225 227 226 228 $now_time = localtime(); … … 242 244 # We now have an imfile in the database, check if we can burntool it. If not, continue on. 243 245 244 if (abs($burntoolState ) != $burntoolStateGood) {246 if (abs($burntoolStateCurrent) != $burntoolStateTarget) { 245 247 my $mdcParser = PS::IPP::Metadata::Config->new; 246 248 … … 249 251 $check_date =~ s/T.*$//; 250 252 my $exp_name = $tmp_exp_name; 251 253 252 254 253 255 my $bt_check_command = "$regtool -checkburntoolimfile "; 254 256 $bt_check_command .= " -class_id $class_id "; 255 257 $bt_check_command .= " -date $check_date "; 256 $bt_check_command .= " -valid_burntool $burntoolState Good";258 $bt_check_command .= " -valid_burntool $burntoolStateTarget "; 257 259 $bt_check_command .= " -exp_name $exp_name "; 258 260 $bt_check_command .= " -dbname $dbname" if defined $dbname; 259 261 260 262 my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) = 261 run ( command => $bt_check_command, verbose => $verbose);263 run ( command => $bt_check_command, verbose => $verbose); 262 264 unless ($success) { 263 $error_code = (($error_code >> 8) or $PS_EXIT_PROG_ERROR);264 &my_die_for_update("Unable to perform regtool: $error_code", 265 $exp_id, $exp_name, $class_id, $PS_EXIT_SYS_ERROR);265 $error_code = (($error_code >> 8) or $PS_EXIT_PROG_ERROR); 266 &my_die_for_update("Unable to perform regtool: $error_code", 267 $exp_id, $exp_name, $class_id, $PS_EXIT_SYS_ERROR); 266 268 } 267 269 … … 270 272 my $exposures; 271 273 while ( scalar @whole > 0 ) { 272 my $value = shift @whole;273 push @single, $value;274 if ($value =~ /^\s*END\s*$/) {275 push @single, "\n";276 277 my $list = parse_md_list( $mdcParser->parse( join( "\n", @single ) ) );278 &my_die_for_update("Unable to parse output from regtool", 279 $exp_id, $exp_name, $class_id, $PS_EXIT_SYS_ERROR) unless280 defined $list;281 push @{ $exposures }, @$list;282 @single = ();283 }284 } 285 274 my $value = shift @whole; 275 push @single, $value; 276 if ($value =~ /^\s*END\s*$/) { 277 push @single, "\n"; 278 279 my $list = parse_md_list( $mdcParser->parse( join( "\n", @single ) ) ); 280 &my_die_for_update("Unable to parse output from regtool", 281 $exp_id, $exp_name, $class_id, $PS_EXIT_SYS_ERROR) unless 282 defined $list; 283 push @{ $exposures }, @$list; 284 @single = (); 285 } 286 } 287 286 288 # We only care about the final entry, as that contains the exposure we are. 287 289 288 290 my $regtool_update = "$regtool -updateprocessedimfile "; 289 291 $regtool_update .= "-dbname $dbname " if defined $dbname; … … 292 294 my $burntool_data = pop(@{ $exposures }); 293 295 if ($burntool_data->{burnable} == 0) { 294 $regtool_update .= " -burntool_state 0 -set_state pending_burntool ";295 unless ($no_update) {296 my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =297 IPC::Cmd::run(command => $regtool_update, verbose => $verbose);298 unless ($success) {299 $error_code = (($error_code >> 8) or $PS_EXIT_PROG_ERROR);300 warn ("Unable to perform regtool -addprocessedimfile: $error_code");301 exit($error_code);302 }303 } else {304 print "skipping command: $command\n";305 }296 $regtool_update .= " -burntool_state 0 -set_state pending_burntool "; 297 unless ($no_update) { 298 my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) = 299 IPC::Cmd::run(command => $regtool_update, verbose => $verbose); 300 unless ($success) { 301 $error_code = (($error_code >> 8) or $PS_EXIT_PROG_ERROR); 302 warn ("Unable to perform regtool -addprocessedimfile: $error_code"); 303 exit($error_code); 304 } 305 } else { 306 print "skipping command: $command\n"; 307 } 306 308 } 307 309 else { 308 my $apply_command = "$ippApplyBurntoolSingle --dbname $dbname ";309 $apply_command .= " --class_id $class_id --exp_id $exp_id ";310 $apply_command .= " --this_uri $burntool_data->{uri} ";311 $apply_command .= " --previous_uri $burntool_data->{previous_uri} " if defined $burntool_data->{previous_uri};312 $apply_command .= " --imfile_state $burntool_data->{imfile_state} ";313 $apply_command .= " --verbose " if $verbose;314 print "$apply_command\n";315 unless ($no_update) {316 my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =317 IPC::Cmd::run(command => $apply_command, verbose => $verbose);318 unless ($success) {319 $error_code = (($error_code >> 8) or $PS_EXIT_PROG_ERROR);320 warn ("Unable to perform ipp_apply_burntool_single.pl: $error_code");321 exit($error_code);322 }323 }324 } 310 my $apply_command = "$ippApplyBurntoolSingle --dbname $dbname "; 311 $apply_command .= " --class_id $class_id --exp_id $exp_id "; 312 $apply_command .= " --this_uri $burntool_data->{uri} "; 313 $apply_command .= " --previous_uri $burntool_data->{previous_uri} " if defined $burntool_data->{previous_uri}; 314 $apply_command .= " --imfile_state $burntool_data->{imfile_state} "; 315 $apply_command .= " --verbose " if $verbose; 316 print "$apply_command\n"; 317 unless ($no_update) { 318 my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) = 319 IPC::Cmd::run(command => $apply_command, verbose => $verbose); 320 unless ($success) { 321 $error_code = (($error_code >> 8) or $PS_EXIT_PROG_ERROR); 322 warn ("Unable to perform ipp_apply_burntool_single.pl: $error_code"); 323 exit($error_code); 324 } 325 } 326 } 325 327 326 328 -
tags/ipp-20101215/ippTasks/nightly_science.pro
-
Property svn:mergeinfo
set to (toggle deleted branches)
/branches/czw_branch/20101203/ippTasks/nightly_science.pro merged eligible /trunk/ippTasks/nightly_science.pro merged eligible /branches/eam_branches/ipp-20101103/ippTasks/nightly_science.pro 29657-29920
r30137 r30183 132 132 # 133 133 macro ns.add.date 134 if ($0 != 2) 135 echo "USAGE: ns.add.date (YYYY-MM-DD)" 136 break 137 end 138 134 139 book newpage nsData $1 135 140 book setword nsData $1 nsState NEW -
Property svn:mergeinfo
set to (toggle deleted branches)
-
tags/ipp-20101215/ippTasks/register.pro
-
Property svn:mergeinfo
set to
/branches/czw_branch/20101203/ippTasks/register.pro merged eligible /branches/eam_branches/ipp-20101103/ippTasks/register.pro merged eligible /trunk/ippTasks/register.pro merged eligible
r30121 r30183 79 79 macro register.revert.off 80 80 task register.imfile.revert 81 active false 82 end 83 end 84 85 macro burntool.on 86 task register.burntool.load 87 active true 88 end 89 task register.burntool.run 90 active true 91 end 92 end 93 94 macro burntool.off 95 task register.burntool.load 96 active false 97 end 98 task register.burntool.run 81 99 active false 82 100 end … … 529 547 $today = `date -u +%Y-%m-%d` 530 548 # debugging purposes 531 # $today = "2010-12-06"549 # $today = "2010-12-25" 532 550 $run = $run -date $today -valid_burntool $valid_burntool_value 533 551 if ($DB:n == 0) -
Property svn:mergeinfo
set to
-
tags/ipp-20101215/ippTools/share/regtool_pendingburntoolimfile.sql
-
Property svn:mergeinfo
set to (toggle deleted branches)
/branches/czw_branch/20101203/ippTools/share/regtool_pendingburntoolimfile.sql merged eligible /trunk/ippTools/share/regtool_pendingburntoolimfile.sql merged eligible /branches/eam_branches/ipp-20101103/ippTools/share/regtool_pendingburntoolimfile.sql 29657-29920
r30049 r30183 23 23 LEFT JOIN pzDownloadExp USING(exp_name) 24 24 LEFT JOIN newExp ON exp_name = tmp_exp_name 25 LEFT JOIN newImfile USING(exp_id)25 LEFT JOIN newImfile USING(exp_id) 26 26 LEFT JOIN rawExp USING(exp_id, exp_name) 27 27 LEFT JOIN rawImfile ON (rawImfile.exp_name = newExp.tmp_exp_name AND rawImfile.tmp_class_id = newImfile.tmp_class_id) 28 28 WHERE 29 29 summitExp.dateobs >= '@DATE@T00:00:00' 30 AND summitExp.dateobs <= '@DATE@T23:59:59'30 AND summitExp.dateobs <= '@DATE@T23:59:59' 31 31 ORDER BY newImfile.tmp_class_id,summitExp.dateobs -
Property svn:mergeinfo
set to (toggle deleted branches)
-
tags/ipp-20101215/ippTools/src/regtool.c
- Property svn:mergeinfo set to
r30061 r30183 74 74 // imfile 75 75 MODECASE(REGTOOL_MODE_PENDINGIMFILE, pendingimfileMode); 76 MODECASE(REGTOOL_MODE_CHECKBURNTOOLIMFILE, checkburntoolimfileMode);77 MODECASE(REGTOOL_MODE_PENDINGBURNTOOLIMFILE, pendingburntoolimfileMode);76 MODECASE(REGTOOL_MODE_CHECKBURNTOOLIMFILE, checkburntoolimfileMode); 77 MODECASE(REGTOOL_MODE_PENDINGBURNTOOLIMFILE, pendingburntoolimfileMode); 78 78 MODECASE(REGTOOL_MODE_ADDPROCESSEDIMFILE, addprocessedimfileMode); 79 79 MODECASE(REGTOOL_MODE_PROCESSEDIMFILE, processedimfileMode); … … 201 201 psFree(query); 202 202 query = rep; 203 203 204 204 psStringSubstitute(&query,exp_name,"@EXP_NAME@"); 205 205 psStringSubstitute(&query,class_id,"@CLASS_ID@"); … … 215 215 } 216 216 psFree(query); 217 217 218 218 psArray *output = p_psDBFetchResult(config->dbh); 219 219 if (!output) { … … 227 227 psError(PXTOOLS_ERR_PROG, false, "unknown error"); 228 228 } 229 229 230 230 return false; 231 231 } … … 243 243 244 244 if ((psMetadataLookupS32(NULL,row,"is_downloaded") != 1)|| 245 (psMetadataLookupS32(NULL,row,"is_registered") != 1)) {245 (psMetadataLookupS32(NULL,row,"is_registered") != 1)) { 246 246 ok_to_burn = false; 247 247 } … … 255 255 already_burned = false; 256 256 } 257 257 258 258 if (previous_uri) { 259 259 psMetadataAddStr(row,PS_LIST_TAIL,"previous_uri",PS_META_REPLACE,"",previous_uri); … … 264 264 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); 265 265 } 266 266 267 267 // negate simple so the default is true 268 268 if (!ippdbPrintMetadatas(stdout, output, "regBurntoolImfile", !simple)) { … … 271 271 return false; 272 272 } 273 273 274 274 psFree(output); 275 275 276 276 277 277 return(true); 278 278 279 279 } 280 280 … … 297 297 psFree(query); 298 298 query = rep; 299 299 300 300 psStringSubstitute(&query,date,"@DATE@"); 301 301 302 // fprintf(stderr,"%s",query);302 // fprintf(stderr,"%s",query); 303 303 304 304 if (!p_psDBRunQuery(config->dbh, query)) { … … 309 309 } 310 310 psFree(query); 311 311 312 312 psArray *output = p_psDBFetchResult(config->dbh); 313 313 if (!output) { … … 321 321 psError(PXTOOLS_ERR_PROG, false, "unknown error"); 322 322 } 323 323 324 324 return false; 325 325 } 326 327 // fprintf (stderr, "found %ld rows\n", output->n); 326 328 if (!psArrayLength(output)) { 327 329 psTrace("regtool", PS_LOG_INFO, "no rows found"); … … 337 339 psString this_class_id = NULL; 338 340 psArray *results = psArrayAllocEmpty(60); // List of suggested imfiles to burntool. 339 341 340 342 for (long i = 0; i < output->n; i++) { 341 343 psMetadata *row = output->data[i]; … … 356 358 if (previous_class_id) { 357 359 if (strcmp(this_class_id,previous_class_id) != 0) { 358 ok_to_burn = true;359 already_burned = true;360 previous_uri = NULL;360 ok_to_burn = true; 361 already_burned = true; 362 previous_uri = NULL; 361 363 } 362 364 } … … 364 366 // Write the URIs as well. 365 367 this_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Duplicate, but helpful for my debugging. 366 psMetadataAddStr(row,PS_LIST_TAIL,"this_uri",PS_META_REPLACE,"",this_uri); 368 psMetadataAddStr(row,PS_LIST_TAIL,"this_uri",PS_META_REPLACE,"",this_uri); 367 369 if (previous_uri) { 368 370 psMetadataAddStr(row,PS_LIST_TAIL,"previous_uri",PS_META_REPLACE,"",previous_uri); … … 372 374 // Convert bits of the SQL query into booleans describing the data state 373 375 if ((psMetadataLookupS32(NULL,row,"is_downloaded") != 1)|| 374 (psMetadataLookupS32(NULL,row,"is_registered") != 1)) {375 //printf("I claim this isn't downloaded or registered? %s %s\n",this_uri,this_class_id);376 ok_to_burn = false;376 (psMetadataLookupS32(NULL,row,"is_registered") != 1)) { 377 // printf("I claim this isn't downloaded or registered? %s %s\n",this_uri,this_class_id); 378 ok_to_burn = false; 377 379 } 378 380 if (already_burned == false) { 379 //printf("already_burned looks false %s %s\n",this_uri,this_class_id);380 ok_to_burn = false;381 // printf("already_burned looks false %s %s\n",this_uri,this_class_id); 382 ok_to_burn = false; 381 383 } 382 384 if (abs(psMetadataLookupS32(NULL,row,"burntool_state")) == valid_burntool) { … … 391 393 // Check the uri for this exposure 392 394 if (!this_uri) { 393 ok_to_burn = false;394 already_burned = false;395 396 // Save this round for next round.397 psFree(previous_class_id);398 psFree(previous_uri);399 previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id"));400 psStringSubstitute(&previous_class_id,"XY","ota");401 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 402 continue;403 } 404 405 // printf("STATUS: %s %s %s %s (%d %d) %d %d %d\n",this_uri,previous_uri,this_class_id,previous_class_id,ok_to_burn,already_burned,psMetadataLookupS32(NULL,row,"burntool_state"),psMetadataLookupS32(NULL,row,"is_registered"),psMetadataLookupS32(NULL,row,"is_downloaded"));406 407 // If the state of this imfile is not "pending_burntool" then we can't burn it. 395 ok_to_burn = false; 396 already_burned = false; 397 398 // Save this round for next round. 399 psFree(previous_class_id); 400 psFree(previous_uri); 401 previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id")); 402 psStringSubstitute(&previous_class_id,"XY","ota"); 403 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 404 continue; 405 } 406 407 // printf("STATUS: %s %s %s %s (%d %d) %d %d %d\n",this_uri,previous_uri,this_class_id,previous_class_id,ok_to_burn,already_burned,psMetadataLookupS32(NULL,row,"burntool_state"),psMetadataLookupS32(NULL,row,"is_registered"),psMetadataLookupS32(NULL,row,"is_downloaded")); 408 409 // If the state of this imfile is not "pending_burntool" then we can't burn it. 408 410 if (!ignore_state) { 409 411 psString imfile_state = psMetadataLookupStr(NULL,row,"imfile_state"); 410 412 411 413 if (!imfile_state) { // imfile state is NULL, so we probably aren't registered. 412 ok_to_burn = false;413 414 // Save this round for next round.415 psFree(previous_class_id);416 psFree(previous_uri);417 previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id"));418 psStringSubstitute(&previous_class_id,"XY","ota");419 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 420 continue;414 ok_to_burn = false; 415 416 // Save this round for next round. 417 psFree(previous_class_id); 418 psFree(previous_uri); 419 previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id")); 420 psStringSubstitute(&previous_class_id,"XY","ota"); 421 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 422 continue; 421 423 } 422 if (strcmp("pending_burntool",imfile_state) != 0) { // Probably the state is full, do not twiddle states 423 // Save this round for next round.424 psFree(previous_class_id);425 psFree(previous_uri);426 previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id"));427 psStringSubstitute(&previous_class_id,"XY","ota");428 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 429 continue;424 if (strcmp("pending_burntool",imfile_state) != 0) { // Probably the state is full, do not twiddle states 425 // Save this round for next round. 426 psFree(previous_class_id); 427 psFree(previous_uri); 428 previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id")); 429 psStringSubstitute(&previous_class_id,"XY","ota"); 430 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 431 continue; 430 432 } 431 433 } 432 434 433 435 // Determine if we've already suggested an entry for this ota, and if not, copy this 434 436 // suggestion into our output result list. … … 439 441 previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id")); 440 442 psStringSubstitute(&previous_class_id,"XY","ota"); 441 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 443 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 442 444 continue; 443 445 } … … 450 452 previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id")); 451 453 psStringSubstitute(&previous_class_id,"XY","ota"); 452 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 453 } 454 454 previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round. 455 } 456 455 457 // negate simple so the default is true 456 458 if (!ippdbPrintMetadatas(stdout, results, "regPendingBurntoolImfile", !simple)) { … … 460 462 return false; 461 463 } 462 464 463 465 psFree(output); 464 466 psFree(results); 465 467 466 468 467 469 return(true); 468 469 } 470 471 470 471 } 472 473 472 474 473 475 static bool addprocessedimfileMode(pxConfig *config) … … 545 547 PXOPT_LOOKUP_STR(md5sum, config->args, "-md5sum", false, false); 546 548 PXOPT_LOOKUP_BOOL(video_cells, config->args, "-video_cells", false); 547 549 548 550 PXOPT_LOOKUP_S16(fault, config->args, "-fault", false, false); 549 551 PXOPT_LOOKUP_S16(quality, config->args, "-quality", false, false); … … 618 620 bytes, 619 621 md5sum, 620 video_cells,622 video_cells, 621 623 0 // burntool_state 622 624 )) { … … 806 808 PXOPT_LOOKUP_STR(set_state, config->args, "-set_state", false, false); 807 809 808 if ((fault == INT16_MAX) && !isfinite(burntool_state) && !(set_state)) {810 if ((fault == INT16_MAX) && (burntool_state == INT16_MAX) && !set_state) { 809 811 psError(PS_ERR_UNKNOWN, false, "one of -fault or -burntool_state or -set_state must be selected"); 810 812 return false; 811 813 } 812 if ((fault != INT16_MAX) && isfinite(burntool_state)) {814 if ((fault != INT16_MAX) && (burntool_state != INT16_MAX)) { 813 815 psError(PS_ERR_UNKNOWN, false, "only one of -fault or -burntool_state must be selected"); 814 816 return false; … … 1312 1314 if (!pxchipQueueByExpTag(config, 1313 1315 exp_id, 1314 chip_workdir,1316 chip_workdir, 1315 1317 label, 1316 data_group,1317 dist_group,1318 data_group, 1319 dist_group, 1318 1320 reduction, 1319 1321 NULL, // expgroup
Note:
See TracChangeset
for help on using the changeset viewer.
