Changeset 25835
- Timestamp:
- Oct 14, 2009, 11:06:18 AM (17 years ago)
- Location:
- trunk
- Files:
-
- 1 added
- 73 edited
-
dbconfig/add.md (modified) (1 diff)
-
dbconfig/cam.md (modified) (2 diffs)
-
dbconfig/changes.1.1.56 (added)
-
dbconfig/chip.md (modified) (2 diffs)
-
dbconfig/config.md (modified) (1 diff)
-
dbconfig/diff.md (modified) (2 diffs)
-
dbconfig/dist.md (modified) (2 diffs)
-
dbconfig/fake.md (modified) (2 diffs)
-
dbconfig/magic.md (modified) (2 diffs)
-
dbconfig/stack.md (modified) (2 diffs)
-
dbconfig/warp.md (modified) (2 diffs)
-
ippScripts/scripts/camera_exp.pl (modified) (1 diff)
-
ippScripts/scripts/ipp_cleanup.pl (modified) (5 diffs)
-
ippScripts/scripts/stack_skycell.pl (modified) (1 diff)
-
ippTasks/simtest.basic.auto (modified) (4 diffs)
-
ippTasks/simtest.stack.auto (modified) (1 diff)
-
ippTools/configure.ac (modified) (1 diff)
-
ippTools/share/addtool_queue_cam_id.sql (modified) (1 diff)
-
ippTools/share/camtool_queue_chip_id.sql (modified) (2 diffs)
-
ippTools/share/chiptool_completely_processed_exp.sql (modified) (2 diffs)
-
ippTools/share/disttool_definebyquery_camera.sql (modified) (2 diffs)
-
ippTools/share/disttool_definebyquery_chip.sql (modified) (2 diffs)
-
ippTools/share/disttool_definebyquery_diff.sql (modified) (2 diffs)
-
ippTools/share/disttool_definebyquery_fake.sql (modified) (2 diffs)
-
ippTools/share/disttool_definebyquery_raw.sql (modified) (1 diff)
-
ippTools/share/disttool_definebyquery_stack.sql (modified) (2 diffs)
-
ippTools/share/disttool_definebyquery_warp.sql (modified) (2 diffs)
-
ippTools/share/disttool_defineinterest.sql (modified) (1 diff)
-
ippTools/share/disttool_pending_camera.sql (modified) (2 diffs)
-
ippTools/share/disttool_pending_chip.sql (modified) (2 diffs)
-
ippTools/share/disttool_pending_diff.sql (modified) (2 diffs)
-
ippTools/share/disttool_pending_fake.sql (modified) (2 diffs)
-
ippTools/share/disttool_pending_raw.sql (modified) (4 diffs)
-
ippTools/share/disttool_pending_stack.sql (modified) (2 diffs)
-
ippTools/share/disttool_pending_warp.sql (modified) (2 diffs)
-
ippTools/share/disttool_pendingfileset.sql (modified) (1 diff)
-
ippTools/share/faketool_completely_processed_exp.sql (modified) (2 diffs)
-
ippTools/share/faketool_queue_cam_id.sql (modified) (2 diffs)
-
ippTools/share/pxadmin_create_tables.sql (modified) (22 diffs)
-
ippTools/src/addtool.c (modified) (5 diffs)
-
ippTools/src/addtoolConfig.c (modified) (2 diffs)
-
ippTools/src/camtool.c (modified) (6 diffs)
-
ippTools/src/camtoolConfig.c (modified) (2 diffs)
-
ippTools/src/chiptool.c (modified) (5 diffs)
-
ippTools/src/chiptoolConfig.c (modified) (2 diffs)
-
ippTools/src/difftool.c (modified) (20 diffs)
-
ippTools/src/difftoolConfig.c (modified) (4 diffs)
-
ippTools/src/disttool.c (modified) (24 diffs)
-
ippTools/src/disttool.h (modified) (1 diff)
-
ippTools/src/disttoolConfig.c (modified) (8 diffs)
-
ippTools/src/faketool.c (modified) (5 diffs)
-
ippTools/src/faketoolConfig.c (modified) (2 diffs)
-
ippTools/src/flatcorr.c (modified) (4 diffs)
-
ippTools/src/magicdstool.c (modified) (8 diffs)
-
ippTools/src/magicdstool.h (modified) (1 diff)
-
ippTools/src/magicdstoolConfig.c (modified) (2 diffs)
-
ippTools/src/magictool.c (modified) (3 diffs)
-
ippTools/src/pxadd.c (modified) (2 diffs)
-
ippTools/src/pxadd.h (modified) (1 diff)
-
ippTools/src/pxcam.c (modified) (3 diffs)
-
ippTools/src/pxcam.h (modified) (2 diffs)
-
ippTools/src/pxchip.c (modified) (4 diffs)
-
ippTools/src/pxchip.h (modified) (2 diffs)
-
ippTools/src/pxfake.c (modified) (3 diffs)
-
ippTools/src/pxfake.h (modified) (2 diffs)
-
ippTools/src/pxtools.c (modified) (1 diff)
-
ippTools/src/pxtools.h (modified) (1 diff)
-
ippTools/src/pxwarp.c (modified) (2 diffs)
-
ippTools/src/pxwarp.h (modified) (1 diff)
-
ippTools/src/regtool.c (modified) (1 diff)
-
ippTools/src/stacktool.c (modified) (13 diffs)
-
ippTools/src/stacktoolConfig.c (modified) (4 diffs)
-
ippTools/src/warptool.c (modified) (6 diffs)
-
ippTools/src/warptoolConfig.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/dbconfig/add.md
r25816 r25835 3 3 add_id S64 0 # Primary Key AUTO_INCREMENT 4 4 cam_id S64 0 # Key INDEX(add_id,cam_id) fkey(cam_id) ref camRun(cam_id) 5 state STR 64 # key5 state STR 64 # Key 6 6 workdir STR 255 7 7 workdir_state STR 64 8 8 reduction STR 64 9 9 label STR 64 10 data_group STR 64 # Key 10 11 dvodb STR 255 12 note STR 255 11 13 image_only BOOL f 12 14 END -
trunk/dbconfig/cam.md
r24681 r25835 6 6 workdir_state STR 64 # key 7 7 label STR 64 # key 8 data_group STR 64 # key 9 dist_group STR 64 # key 8 10 reduction STR 64 9 11 expgroup STR 64 # key … … 12 14 end_stage STR 64 # Key 13 15 magicked S64 0 16 note STR 255 14 17 END 15 18 -
trunk/dbconfig/chip.md
r24552 r25835 6 6 workdir_state STR 64 # Key 7 7 label STR 64 # Key 8 data_group STR 64 # Key 9 dist_group STR 64 # Key 8 10 reduction STR 64 # Reduction class 9 11 expgroup STR 64 # Key … … 12 14 end_stage STR 64 # Key 13 15 magicked S64 0 16 note STR 255 14 17 END 15 18 -
trunk/dbconfig/config.md
r25421 r25835 2 2 pkg_name STR ippdb 3 3 pkg_namespace STR ippdb 4 pkg_version STR 1.1.5 54 pkg_version STR 1.1.56 5 5 END -
trunk/dbconfig/diff.md
r24552 r25835 6 6 workdir STR 255 7 7 label STR 64 # Key 8 data_group STR 64 9 dist_group STR 64 8 10 reduction STR 64 # Reduction class 9 11 dvodb STR 255 … … 13 15 exposure BOOL f 14 16 magicked S64 0 17 note STR 255 15 18 END 16 19 -
trunk/dbconfig/dist.md
r25513 r25835 1 1 distTarget METADATA 2 2 target_id S64 0 # Primary Key 3 labelSTR 643 dist_group STR 64 4 4 filter STR 64 5 5 stage STR 64 … … 22 22 time_stamp UTC 0001-01-01T00:00:00Z 23 23 fault S16 0 24 note STR 255 24 25 END 25 26 -
trunk/dbconfig/fake.md
r19930 r25835 5 5 workdir STR 255 6 6 label STR 64 # Key 7 data_group STR 64 # Key 8 dist_group STR 64 # Key 7 9 reduction STR 64 # Reduction class 8 10 expgroup STR 64 # Key … … 11 13 end_stage STR 64 # Key 12 14 epoch UTC 0001-01-01T00:00:00Z 15 note STR 255 13 16 END 14 17 -
trunk/dbconfig/magic.md
r25014 r25835 11 11 workdir_state STR 255 # Key 12 12 label STR 64 # key 13 data_group STR 64 13 14 dvodb STR 255 14 15 registered TAI NULL 15 16 fault S16 0 # Key 17 note STR 255 16 18 END 17 19 … … 53 55 cam_id S64 0 54 56 label STR 64 # key 57 data_group STR 64 # key 55 58 outroot STR 255 56 59 recoveryroot STR 255 57 60 re_place BOOL f 58 61 remove BOOL f 62 fault S16 0 # Key 63 note STR 255 59 64 END 60 65 -
trunk/dbconfig/stack.md
r23688 r25835 6 6 workdir STR 255 7 7 label STR 64 # Key 8 data_group STR 64 # Key 9 dist_group STR 64 # Key 8 10 reduction STR 64 # Reduction class 9 11 dvodb STR 255 … … 12 14 tess_id STR 64 # Key 13 15 filter STR 64 16 note STR 255 14 17 END 15 18 -
trunk/dbconfig/warp.md
r24552 r25835 17 17 workdir_state STR 64 # Key 18 18 label STR 64 # key 19 data_group STR 64 20 dist_group STR 64 19 21 dvodb STR 255 20 22 tess_id STR 64 … … 23 25 registered TAI NULL 24 26 magicked S64 0 27 note STR 255 25 28 END 26 29 -
trunk/ippScripts/scripts/camera_exp.pl
r25816 r25835 354 354 # $fpaCommand .= " -dtime_addstar $dtime_addstar"; 355 355 } else { 356 $fpaCommand .= " -updaterun -s tate full";356 $fpaCommand .= " -updaterun -set_state full"; 357 357 } 358 358 $fpaCommand .= " -dbname $dbname" if defined $dbname; -
trunk/ippScripts/scripts/ipp_cleanup.pl
r25801 r25835 488 488 # No skycells were found for some reason. 489 489 # Not technically an "error," but a "you told me to do X, and I can't. Please fix this yourself." 490 my $command = "$stacktool -updaterun -stack_id $stage_id -s tate $error_state";490 my $command = "$stacktool -updaterun -stack_id $stage_id -set_state $error_state"; 491 491 $command .= " -dbname $dbname" if defined $dbname; 492 492 … … 561 561 my $command = "$stacktool -stack_id $stage_id"; 562 562 if ($mode eq "goto_purged") { 563 $command .= " -updaterun -s tate purged";563 $command .= " -updaterun -set_state purged"; 564 564 } 565 565 elsif ($mode eq "goto_cleaned") { 566 $command .= " -updaterun -s tate cleaned";566 $command .= " -updaterun -set_state cleaned"; 567 567 } 568 568 elsif ($mode eq "goto_scrubbed") { 569 $command .= " -updaterun -s tate scrubbed";569 $command .= " -updaterun -set_state scrubbed"; 570 570 } 571 571 $command .= " -dbname $dbname" if defined $dbname; … … 589 589 590 590 } else { 591 my $command = "$stacktool -updaterun -stack_id $stage_id -s tate $error_state";591 my $command = "$stacktool -updaterun -stack_id $stage_id -set_state $error_state"; 592 592 $command .= " -dbname $dbname" if defined $dbname; 593 593 … … 624 624 # No skycells were found for some reason. 625 625 # Not technically an "error," but a "you told me to do X, and I can't. Please fix this yourself." 626 my $command = "$difftool -updaterun -diff_id $stage_id -s tate $error_state";626 my $command = "$difftool -updaterun -diff_id $stage_id -set_state $error_state"; 627 627 $command .= " -dbname $dbname" if defined $dbname; 628 628 … … 741 741 742 742 } else { 743 my $command = "$difftool -updaterun -diff_id $stage_id -s tate $error_state";743 my $command = "$difftool -updaterun -diff_id $stage_id -set_state $error_state"; 744 744 745 745 $command .= " -dbname $dbname" if defined $dbname; -
trunk/ippScripts/scripts/stack_skycell.pl
r25551 r25835 304 304 $command .= (" -dtime_script " . ((DateTime->now->mjd - $mjd_start) * 86400)); 305 305 } else { 306 $mode = "-updaterun -s tate full";306 $mode = "-updaterun -set_state full"; 307 307 } 308 308 $command .= " $mode -stack_id $stack_id"; -
trunk/ippTasks/simtest.basic.auto
r24174 r25835 47 47 name STR OBJECT-i 48 48 check STR "detselect -dbname @DBNAME@ -search -inst @CAMERA@ -filter i -det_type FLAT" 49 launch STR "chiptool -dbname @DBNAME@ -updaterun -inst @CAMERA@ -filter i -label wait -set_label proc "49 launch STR "chiptool -dbname @DBNAME@ -updaterun -inst @CAMERA@ -filter i -label wait -set_label proc -set_data_group simtest_i -set_dist_group simtest" 50 50 block STR NONE 51 51 END … … 54 54 name STR OBJECT-r 55 55 check STR "detselect -dbname @DBNAME@ -search -inst @CAMERA@ -filter r -det_type FLAT" 56 launch STR "chiptool -dbname @DBNAME@ -updaterun -inst @CAMERA@ -filter r -label wait -set_label proc "56 launch STR "chiptool -dbname @DBNAME@ -updaterun -inst @CAMERA@ -filter r -label wait -set_label proc -set_data_group simtest_r -set_dist_group simtest" 57 57 block STR NONE 58 58 END … … 61 61 automate METADATA 62 62 name STR STACK 63 regular STR "stacktool -definebyquery - all -label proc -workdir file://@CWD@/stack -min_new 4 -min_frac 2 -select_good_frac_min 0.2 -dbname @DBNAME@"63 regular STR "stacktool -definebyquery -set_label proc -set_data_group simtest_r -set_dist_group simtest -set_workdir file://@CWD@/stack -min_new 4 -min_frac 2 -select_good_frac_min 0.2 -dbname @DBNAME@" 64 64 END 65 65 … … 67 67 automate METADATA 68 68 name STR DIFF 69 regular STR "difftool -definewarpstack - label proc -workdir file://@CWD@/diff -good_frac 0.2 -dbname @DBNAME@"69 regular STR "difftool -definewarpstack -set_label proc -set_workdir file://@CWD@/diff -good_frac 0.2 -dbname @DBNAME@" 70 70 END 71 71 -
trunk/ippTasks/simtest.stack.auto
r24098 r25835 61 61 automate METADATA 62 62 name STR STACK 63 regular STR "stacktool -definebyquery - all -label proc -workdir file://@CWD@/stack -min_new 4 -min_frac 2 -select_good_frac_min 0.2 -dbname @DBNAME@"63 regular STR "stacktool -definebyquery -label proc -workdir file://@CWD@/stack -min_new 4 -min_frac 2 -select_good_frac_min 0.2 -dbname @DBNAME@" 64 64 END 65 65 -
trunk/ippTools/configure.ac
r25421 r25835 18 18 PKG_CHECK_MODULES([PSLIB], [pslib >= 1.1.0]) 19 19 PKG_CHECK_MODULES([PSMODULES], [psmodules >= 1.1.0]) 20 PKG_CHECK_MODULES([IPPDB], [ippdb >= 1.1.5 5])20 PKG_CHECK_MODULES([IPPDB], [ippdb >= 1.1.56]) 21 21 22 22 PXTOOLS_CFLAGS="${PSLIB_CFLAGS=} ${PSMODULES_CFLAGS=} ${IPPDB_CFLAGS=}" -
trunk/ippTools/share/addtool_queue_cam_id.sql
r25816 r25835 8 8 '%s', -- reduction 9 9 '%s', -- label 10 '%s', -- data_group 10 11 '%s', -- dvodb 12 '%s', -- note 11 13 %d -- image_only 12 14 FROM camRun -
trunk/ippTools/share/camtool_queue_chip_id.sql
r24681 r25835 9 9 '%s', -- workdir_state 10 10 '%s', -- label 11 '%s', -- data_group 12 '%s', -- dist_group 11 13 '%s', -- reduction 12 14 '%s', -- expgroup … … 14 16 '%s', -- tess_id 15 17 '%s', -- end_stage 16 0 -- magicked 18 0, -- magicked 19 '%s' -- note 17 20 FROM chipRun 18 21 WHERE -
trunk/ippTools/share/chiptool_completely_processed_exp.sql
r23688 r25835 7 7 workdir_state, 8 8 label, 9 data_group, 10 dist_group, 9 11 reduction, 10 12 expgroup, … … 12 14 tess_id, 13 15 end_stage, 14 all_files_magicked as magicked 16 all_files_magicked as magicked, 17 note 15 18 FROM 16 19 (SELECT -
trunk/ippTools/share/disttool_definebyquery_camera.sql
r25513 r25835 4 4 rawExp.exp_name as run_tag, 5 5 camRun.magicked, 6 distTarget.label, 6 camRun.label, 7 distTarget.dist_group, 7 8 distTarget.target_id, 8 9 distTarget.clean … … 12 13 JOIN distTarget ON distTarget.stage = 'camera' 13 14 AND rawExp.filter = distTarget.filter 14 AND camRun. label = distTarget.label15 AND camRun.dist_group = distTarget.dist_group 15 16 JOIN rcInterest USING(target_id) 16 17 LEFT JOIN distRun ON distRun.stage = 'camera' -
trunk/ippTools/share/disttool_definebyquery_chip.sql
r25513 r25835 5 5 rawExp.exp_name as run_tag, 6 6 chipRun.label, 7 chipRun.dist_group, 7 8 distTarget.target_id, 8 9 distTarget.clean … … 10 11 JOIN rawExp USING(exp_id) 11 12 JOIN distTarget ON distTarget.stage = 'chip' 12 AND chipRun. label = distTarget.label13 AND chipRun.dist_group = distTarget.dist_group 13 14 AND rawExp.filter = distTarget.filter 14 15 JOIN rcInterest USING(target_id) -
trunk/ippTools/share/disttool_definebyquery_diff.sql
r25513 r25835 4 4 diffRun.magicked, 5 5 rawExp.exp_name as run_tag, 6 distTarget.label, 6 diffRun.label, 7 distTarget.dist_group, 7 8 distTarget.target_id, 8 9 distTarget.clean … … 15 16 JOIN rawExp USING(exp_id) 16 17 JOIN distTarget ON distTarget.stage = 'diff' 17 AND diffRun. label = distTarget.label18 AND diffRun.dist_group = distTarget.dist_group 18 19 AND distTarget.filter = rawExp.filter 19 20 JOIN rcInterest USING(target_id) -
trunk/ippTools/share/disttool_definebyquery_fake.sql
r25542 r25835 4 4 CAST(0 AS SIGNED) AS magicked, 5 5 rawExp.exp_name as run_tag, 6 distTarget.label, 6 fakeRun.label, 7 distTarget.dist_group, 7 8 distTarget.target_id, 8 9 distTarget.clean … … 11 12 JOIN chipRun USING(chip_id) 12 13 JOIN rawExp USING(exp_id) 13 JOIN distTarget ON distTarget.stage = 'fake' AND fakeRun. label = distTarget.label14 JOIN distTarget ON distTarget.stage = 'fake' AND fakeRun.dist_group = distTarget.dist_group 14 15 AND rawExp.filter = distTarget.filter 15 16 JOIN rcInterest USING(target_id) -
trunk/ippTools/share/disttool_definebyquery_raw.sql
r25513 r25835 4 4 rawExp.exp_name AS run_tag, 5 5 rawExp.magicked, 6 distTarget.label, 6 chipRun.label, 7 distTarget.dist_group, 7 8 distTarget.target_id, 8 9 distTarget.clean 9 10 FROM rawExp 10 11 JOIN chipRun USING(exp_id) 11 JOIN distTarget ON distTarget. label = chipRun.labelAND distTarget.stage = 'raw'12 JOIN distTarget ON distTarget.dist_group = chipRun.dist_group AND distTarget.stage = 'raw' 12 13 AND rawExp.filter = distTarget.filter 13 14 JOIN rcInterest USING(target_id) -
trunk/ippTools/share/disttool_definebyquery_stack.sql
r25542 r25835 5 5 -- run tag in the form 'stack.$skycell_id.$stack_id' 6 6 CONCAT_WS('.', 'stack', stackRun.skycell_id, convert(stackRun.stack_id, CHAR)) as run_tag, 7 distTarget.label, 7 stackRun.label, 8 distTarget.dist_group, 8 9 distTarget.target_id, 9 10 distTarget.clean … … 11 12 JOIN stackSumSkyfile USING(stack_id) 12 13 JOIN distTarget ON distTarget.stage = 'stack' 13 AND stackRun. label = distTarget.label14 AND stackRun.dist_group = distTarget.dist_group 14 15 AND stackRun.filter = distTarget.filter 15 16 JOIN rcInterest USING(target_id) -
trunk/ippTools/share/disttool_definebyquery_warp.sql
r25513 r25835 4 4 warpRun.magicked, 5 5 rawExp.exp_name as run_tag, 6 distTarget.label, 6 warpRun.label, 7 distTarget.dist_group, 7 8 distTarget.target_id, 8 9 distTarget.clean … … 13 14 JOIN rawExp USING(exp_id) 14 15 JOIN distTarget ON distTarget.stage = 'warp' 15 AND warpRun. label = distTarget.label16 AND warpRun.dist_group = distTarget.dist_group 16 17 AND rawExp.filter = distTarget.filter 17 18 JOIN rcInterest USING(target_id) -
trunk/ippTools/share/disttool_defineinterest.sql
r25493 r25835 1 1 INSERT INTO rcInterest 2 SELECT 0, dest_id,target_id, '@STATE@'2 SELECT 0, rcDestination.dest_id, distTarget.target_id, '@STATE@' 3 3 FROM distTarget 4 4 JOIN rcDestination -
trunk/ippTools/share/disttool_pending_camera.sql
r25429 r25835 2 2 distRun.dist_id, 3 3 distRun.label, 4 distTarget.dist_group, 4 5 stage, 5 6 stage_id, … … 16 17 chipRun.magicked 17 18 FROM distRun 19 JOIN distTarget USING(target_id, stage) 18 20 JOIN camRun ON camRun.cam_id = distRun.stage_id 19 21 JOIN camProcessedExp USING(cam_id) -
trunk/ippTools/share/disttool_pending_chip.sql
r25429 r25835 2 2 distRun.dist_id, 3 3 distRun.label, 4 distTarget.dist_group, 4 5 stage, 5 6 stage_id, … … 16 17 chipProcessedImfile.magicked 17 18 FROM distRun 19 JOIN distTarget USING(target_id, stage) 18 20 JOIN chipRun ON chipRun.chip_id = distRun.stage_id 19 21 JOIN rawExp using(exp_id) -
trunk/ippTools/share/disttool_pending_diff.sql
r25429 r25835 2 2 distRun.dist_id, 3 3 distRun.label, 4 distTarget.dist_group, 4 5 stage, 5 6 stage_id, … … 18 19 diffSkyfile.magicked 19 20 FROM distRun 21 JOIN distTarget USING(target_id, stage) 20 22 JOIN diffRun ON stage_id = diff_id 21 23 JOIN diffSkyfile using(diff_id) -
trunk/ippTools/share/disttool_pending_fake.sql
r25429 r25835 2 2 distRun.dist_id, 3 3 distRun.label, 4 distTarget.dist_group, 4 5 stage, 5 6 stage_id, … … 16 17 0 17 18 FROM distRun 19 JOIN distTarget USING(target_id, stage) 18 20 JOIN fakeRun ON fakeRun.fake_id = distRun.stage_id 19 21 JOIN fakeProcessedImfile USING(fake_id) -
trunk/ippTools/share/disttool_pending_raw.sql
r25429 r25835 2 2 distRun.dist_id, 3 3 distRun.label, 4 distTarget.dist_group, 4 5 stage, 5 6 stage_id, … … 16 17 rawImfile.magicked 17 18 FROM distRun 19 JOIN distTarget USING(target_id, stage) 18 20 JOIN rawExp ON rawExp.exp_id = stage_id 19 21 JOIN rawImfile USING(exp_id) … … 35 37 distRun.dist_id, 36 38 distRun.label, 39 distTarget.dist_group, 37 40 stage, 38 41 stage_id, … … 49 52 rawExp.magicked 50 53 FROM distRun 54 JOIN distTarget USING(target_id, stage) 51 55 JOIN rawExp ON exp_id = stage_id 52 56 LEFT JOIN distComponent -
trunk/ippTools/share/disttool_pending_stack.sql
r25429 r25835 2 2 distRun.dist_id, 3 3 distRun.label, 4 distTarget.dist_group, 4 5 stage, 5 6 stage_id, … … 18 19 0 AS magicked 19 20 FROM distRun 21 JOIN distTarget USING(target_id, stage) 20 22 JOIN stackRun 21 23 ON stage_id = stack_id -
trunk/ippTools/share/disttool_pending_warp.sql
r25429 r25835 2 2 distRun.dist_id, 3 3 distRun.label, 4 distTarget.dist_group, 4 5 stage, 5 6 stage_id, … … 16 17 warpSkyfile.magicked 17 18 FROM distRun 19 JOIN distTarget USING(target_id, stage) 18 20 JOIN warpRun ON stage_id = warp_id 19 21 JOIN warpSkyfile using(warp_id) -
trunk/ippTools/share/disttool_pendingfileset.sql
r25674 r25835 4 4 distRun.stage, 5 5 stage_id, 6 distTarget. label,6 distTarget.dist_group, 7 7 distTarget.filter, 8 8 CONCAT_WS('.', distRun.outroot, CONVERT(distRun.dist_id, CHAR)) as dist_dir, -
trunk/ippTools/share/faketool_completely_processed_exp.sql
r20608 r25835 6 6 workdir, 7 7 label, 8 data_group, 9 dist_group, 8 10 reduction, 9 11 expgroup, … … 11 13 tess_id, 12 14 end_stage, 13 epoch 15 epoch, 16 note 14 17 FROM 15 18 (SELECT -
trunk/ippTools/share/faketool_queue_cam_id.sql
r19092 r25835 6 6 '%s', -- workdir 7 7 '%s', -- label 8 '%s', -- data_group 9 '%s', -- dist_group 8 10 '%s', -- reduction 9 11 '%s', -- expgroup … … 11 13 '%s', -- tess_id 12 14 '%s', -- end_stage 13 NULL -- epoch 15 NULL, -- epoch 16 '%s' -- note 14 17 FROM camRun 15 18 WHERE -
trunk/ippTools/share/pxadmin_create_tables.sql
r25816 r25835 261 261 workdir_state VARCHAR(64), 262 262 label VARCHAR(64), 263 data_group VARCHAR(64), 264 dist_group VARCHAR(64), 263 265 reduction VARCHAR(64), 264 expgroup VARCHAR(64),266 expgroup VARCHAR(64), 265 267 dvodb VARCHAR(255), 266 268 tess_id VARCHAR(64), 267 269 end_stage VARCHAR(64), 268 270 magicked BIGINT, 271 note VARCHAR(255), 269 272 PRIMARY KEY(chip_id), 270 273 KEY(chip_id), KEY(exp_id), … … 272 275 KEY(workdir_state), 273 276 KEY(label), 277 KEY(data_group), 278 KEY(dist_group), 274 279 KEY(expgroup), 275 280 KEY(end_stage), … … 367 372 workdir_state VARCHAR(64), 368 373 label VARCHAR(64), 374 data_group VARCHAR(64), 375 dist_group VARCHAR(64), 369 376 reduction VARCHAR(64), 370 377 expgroup VARCHAR(64), … … 373 380 end_stage VARCHAR(64), 374 381 magicked BIGINT, 382 note VARCHAR(255), 375 383 PRIMARY KEY(cam_id), 376 384 KEY(cam_id), … … 379 387 KEY(workdir_state), 380 388 KEY(label), 389 KEY(data_group), 390 KEY(dist_group), 381 391 KEY(expgroup), 382 392 KEY(end_stage), … … 466 476 reduction VARCHAR(64), 467 477 label VARCHAR(64), 478 data_group VARCHAR(64), 468 479 dvodb VARCHAR(255), 480 note VARCHAR(255), 469 481 image_only TINYINT, 470 482 PRIMARY KEY(add_id), … … 474 486 KEY(workdir_state), 475 487 KEY(label), 488 KEY(data_group), 476 489 INDEX(add_id, cam_id), 477 490 FOREIGN KEY(cam_id) REFERENCES camRun(cam_id) … … 498 511 workdir VARCHAR(255), 499 512 label VARCHAR(64), 513 data_group VARCHAR(64), 514 dist_group VARCHAR(64), 500 515 reduction VARCHAR(64), 501 516 expgroup VARCHAR(64), … … 504 519 end_stage VARCHAR(64), 505 520 epoch TIMESTAMP DEFAULT CURRENT_TIMESTAMP, 521 note VARCHAR(255), 506 522 PRIMARY KEY(fake_id), 507 523 KEY(cam_id), 508 524 KEY(state), 509 525 KEY(label), 526 KEY(data_group), 527 KEY(dist_group), 510 528 KEY(expgroup), 511 529 KEY(end_stage), … … 834 852 workdir_state VARCHAR(64), 835 853 label VARCHAR(64), 854 data_group VARCHAR(64), 855 dist_group VARCHAR(64), 836 856 dvodb VARCHAR(255), 837 857 tess_id VARCHAR(64), … … 840 860 registered DATETIME, 841 861 magicked BIGINT, 862 note VARCHAR(255), 842 863 PRIMARY KEY(warp_id), 843 864 KEY(warp_id), … … 847 868 KEY(workdir_state), 848 869 KEY(label), 870 KEY(data_group), 871 KEY(dist_group), 849 872 KEY(end_stage), 850 873 INDEX(warp_id, fake_id), … … 910 933 workdir VARCHAR(255), 911 934 label VARCHAR(64), 935 data_group VARCHAR(64), 936 dist_group VARCHAR(64), 912 937 reduction VARCHAR(64), 913 938 dvodb VARCHAR(255), … … 916 941 tess_id VARCHAR(64), 917 942 filter VARCHAR(64), 943 note VARCHAR(255), 918 944 PRIMARY KEY(stack_id), 919 945 KEY(stack_id), … … 921 947 KEY(skycell_id), 922 948 KEY(tess_id), 923 KEY(label) 949 KEY(label), 950 KEY(data_group), 951 KEY(dist_group) 924 952 ) ENGINE=innodb DEFAULT CHARSET=latin1; 925 953 … … 973 1001 workdir VARCHAR(255), 974 1002 label VARCHAR(64), 1003 data_group VARCHAR(64), 1004 dist_group VARCHAR(64), 975 1005 reduction VARCHAR(64), 976 1006 dvodb VARCHAR(255), … … 980 1010 exposure TINYINT DEFAULT 0, 981 1011 magicked BIGINT, 1012 note VARCHAR(255), 982 1013 PRIMARY KEY(diff_id), 983 1014 KEY(diff_id), 984 1015 KEY(state), 985 1016 KEY(tess_id), 986 KEY(label) 1017 KEY(label), 1018 KEY(data_group), 1019 KEY(dist_group) 987 1020 ) ENGINE=innodb DEFAULT CHARSET=latin1; 988 1021 … … 1055 1088 workdir_state VARCHAR(255), 1056 1089 label VARCHAR(64), 1090 data_group VARCHAR(64), 1057 1091 dvodb VARCHAR(255), 1058 1092 registered DATETIME, 1059 1093 fault SMALLINT, 1094 note VARCHAR(255), 1060 1095 PRIMARY KEY(magic_id), 1061 1096 KEY(magic_id), … … 1063 1098 KEY(workdir_state), 1064 1099 KEY(label), 1100 KEY(data_group), 1065 1101 KEY(fault), 1066 1102 FOREIGN KEY(exp_id) REFERENCES rawExp(exp_id), … … 1118 1154 cam_id BIGINT, 1119 1155 label VARCHAR(64), 1156 data_group VARCHAR(64), 1120 1157 outroot VARCHAR(255), 1121 1158 recoveryroot VARCHAR(255), 1122 1159 re_place TINYINT, 1123 1160 remove TINYINT, 1161 fault SMALLINT, 1162 note VARCHAR(255), 1124 1163 PRIMARY KEY(magic_ds_id), 1125 1164 KEY(magic_ds_id), … … 1127 1166 KEY(magic_id), 1128 1167 KEY(label), 1168 KEY(fault), 1129 1169 FOREIGN KEY(magic_id) REFERENCES magicRun(magic_id), 1130 1170 FOREIGN KEY(inv_magic_id) REFERENCES magicRun(magic_id) … … 1303 1343 time_stamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP, 1304 1344 fault SMALLINT, 1345 note VARCHAR(255), 1305 1346 PRIMARY KEY(dist_id), 1306 1347 KEY(state), -
trunk/ippTools/src/addtool.c
r25816 r25835 111 111 PXOPT_LOOKUP_STR(dvodb, config->args, "-set_dvodb", false, false); 112 112 PXOPT_LOOKUP_STR(label, config->args, "-set_label", false, false); 113 PXOPT_LOOKUP_STR(data_group, config->args, "-set_data_group", false, false); 113 114 PXOPT_LOOKUP_STR(reduction, config->args, "-set_reduction", false, false); 115 PXOPT_LOOKUP_STR(note, config->args, "-set_note", false, false); 114 116 PXOPT_LOOKUP_BOOL(image_only, config->args, "-image_only", false); 115 117 PXOPT_LOOKUP_BOOL(pretend, config->args, "-pretend", false); … … 216 218 reduction ? reduction : row->reduction, 217 219 label ? label : row->label, 220 data_group ? data_group : (label ? label : row->label), 218 221 dvodb ? dvodb : row->dvodb, 222 note ? note : NULL, 219 223 image_only 220 224 )) { … … 253 257 PXOPT_COPY_STR(config->args, where, "-reduction", "addRun.reduction", "=="); 254 258 255 if (!psListLength(where->list) 256 && !psMetadataLookupBool(NULL, config->args, "-all")) { 259 if (!psListLength(where->list)) { 257 260 psFree(where); 258 261 psError(PXTOOLS_ERR_DATA, false, "search parameters are required"); … … 260 263 } 261 264 265 psString query = psStringCopy("UPDATE addRun JOIN camRun USING(cam_id) JOIN chipRun USING(chip_id) JOIN rawExp USING(exp_id)"); 266 267 // pxUpdateRun gets parameters from config->args and runs the update query 268 bool result = pxUpdateRun(config, where, &query, false); 269 270 psFree(query); 271 psFree(where); 272 273 return result; 274 275 276 #ifdef notdef 262 277 PXOPT_LOOKUP_STR(state, config->args, "-set_state", false, false); 263 278 PXOPT_LOOKUP_STR(label, config->args, "-set_label", false, false); … … 288 303 289 304 return true; 305 #endif 290 306 } 291 307 -
trunk/ippTools/src/addtoolConfig.c
r25816 r25835 61 61 psMetadataAddBool(definebyqueryArgs, PS_LIST_TAIL, "-pretend", 0, "do not actually modify the database", false); 62 62 psMetadataAddBool(definebyqueryArgs, PS_LIST_TAIL, "-simple", 0, "use the simple output format", false); 63 64 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_data_group", 0, "define new data_group", NULL); 65 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_dist_group", 0, "define new dist_group", NULL); 66 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_note", 0, "define new note", NULL); 63 67 psMetadataAddBool(definebyqueryArgs, PS_LIST_TAIL, "-all", 0, "allow everything to be queued without search terms", false); 64 68 … … 74 78 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_state", 0, "set state", NULL); 75 79 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_label", 0, "set label", NULL); 76 80 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_data_group", 0, "define new data_group", NULL); 81 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_dist_group", 0, "define new dist_group", NULL); 82 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_note", 0, "define new note", NULL); 77 83 // -pendingexp 78 84 psMetadata *pendingexpArgs = psMetadataAlloc(); -
trunk/ippTools/src/camtool.c
r25330 r25835 121 121 PXOPT_LOOKUP_STR(workdir, config->args, "-set_workdir", false, false); 122 122 PXOPT_LOOKUP_STR(label, config->args, "-set_label", false, false); 123 PXOPT_LOOKUP_STR(data_group, config->args, "-set_data_group", false, false); 124 PXOPT_LOOKUP_STR(dist_group, config->args, "-set_dist_group", false, false); 123 125 PXOPT_LOOKUP_STR(reduction, config->args, "-set_reduction", false, false); 124 126 PXOPT_LOOKUP_STR(expgroup, config->args, "-set_expgroup", false, false); … … 126 128 PXOPT_LOOKUP_STR(tess_id, config->args, "-set_tess_id", false, false); 127 129 PXOPT_LOOKUP_STR(end_stage, config->args, "-set_end_stage", false, false); 130 PXOPT_LOOKUP_STR(note, config->args, "-set_note", false, false); 128 131 129 132 // find the exp_id of all the exposures that we want to queue up. … … 212 215 workdir ? workdir : row->workdir, 213 216 label ? label : row->label, 217 data_group ? data_group: row->data_group, 218 dist_group ? dist_group: row->dist_group, 214 219 reduction ? reduction : row->reduction, 215 220 expgroup ? expgroup : row->expgroup, 216 221 dvodb ? dvodb : row->dvodb, 217 222 tess_id ? tess_id : row->tess_id, 218 end_stage ? end_stage : row->end_stage 223 end_stage ? end_stage : row->end_stage, 224 note 219 225 )) { 220 226 if (!psDBRollback(config->dbh)) { … … 251 257 PXOPT_COPY_STR(config->args, where, "-reduction", "camRun.reduction", "=="); 252 258 253 if (!psListLength(where->list) 254 && !psMetadataLookupBool(NULL, config->args, "-all")) { 259 if (!psListLength(where->list)) { 255 260 psFree(where); 256 261 psError(PXTOOLS_ERR_DATA, false, "search parameters are required"); 257 262 return false; 258 263 } 259 260 PXOPT_LOOKUP_STR(state, config->args, "-set_state", false, false); 261 PXOPT_LOOKUP_STR(label, config->args, "-set_label", false, false); 262 263 if ((!state) && (!label)) { 264 psError(PXTOOLS_ERR_DATA, false, "parameters are required"); 265 psFree(where); 266 return false; 267 } 268 269 if (state) { 270 // set camRun.state to state 271 if (!pxcamRunSetStateByQuery(config, where, state)) { 272 psFree(where); 273 return false; 274 } 275 } 276 277 if (label) { 278 // set camRun.label to label 279 if (!pxcamRunSetLabelByQuery(config, where, label)) { 280 psFree(where); 281 return false; 282 } 283 } 284 264 psString query = psStringCopy("UPDATE camRun JOIN chipRun USING(chip_id) JOIN rawExp USING(exp_id)"); 265 266 // pxUpdateRun gets parameters from config->args and updates 267 bool result = pxUpdateRun(config, where, &query, true); 268 if (!result) { 269 psError(PXTOOLS_ERR_DATA, false, "pxUpdateRun failed"); 270 } 271 272 psFree(query); 285 273 psFree(where); 286 274 287 return true;275 return result; 288 276 } 289 277 … … 642 630 pendingRow->workdir, 643 631 pendingRow->label, 632 pendingRow->data_group, 633 pendingRow->dist_group, 644 634 pendingRow->reduction, 645 635 pendingRow->expgroup, 646 636 pendingRow->dvodb, 647 637 pendingRow->tess_id, 648 pendingRow->end_stage 638 pendingRow->end_stage, 639 NULL // note does not propagate 649 640 )) { 650 641 // rollback … … 656 647 return false; 657 648 } 658 659 /* if (!pxaddQueueByCamID(config, */660 /* pendingRow->cam_id, */661 /* pendingRow->workdir, */662 /* pendingRow->label, */663 /* pendingRow->reduction, */664 /* pendingRow->dvodb */665 /* )) { */666 /* // rollback */667 /* if (!psDBRollback(config->dbh)) { */668 /* psError(PS_ERR_UNKNOWN, false, "database error"); */669 /* } */670 /* psError(PS_ERR_UNKNOWN, false, "failed to queue new addRun"); */671 /* psFree(pendingRow); */672 /* return false; */673 /* } */674 649 675 650 psFree(pendingRow); -
trunk/ippTools/src/camtoolConfig.c
r24681 r25835 62 62 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_tess_id", 0, "define tess ID", NULL); 63 63 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_end_stage", 0, "define end stage", NULL); 64 psMetadataAddBool(definebyqueryArgs, PS_LIST_TAIL, "-all", 0, "allow everything to be queued without search terms", false); 64 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_data_group", 0, "define data group", NULL); 65 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_dist_group", 0, "define dist group", NULL); 66 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_note", 0, "define note", NULL); 65 67 66 68 // -updaterun … … 77 79 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_state", 0, "set state", NULL); 78 80 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_label", 0, "set label", NULL); 79 81 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_data_group", 0, "define new data_group", NULL); 82 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_dist_group", 0, "define new dist_group", NULL); 83 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_note", 0, "define new note", NULL); 80 84 // -pendingexp 81 85 psMetadata *pendingexpArgs = psMetadataAlloc(); -
trunk/ippTools/src/chiptool.c
r25822 r25835 146 146 PXOPT_LOOKUP_STR(tess_id, config->args, "-set_tess_id", false, false); 147 147 PXOPT_LOOKUP_STR(end_stage, config->args, "-set_end_stage", false, false); 148 PXOPT_LOOKUP_STR(dist_group, config->args, "-set_dist_group", false, false); 149 PXOPT_LOOKUP_STR(data_group, config->args, "-set_data_group", false, false); 150 PXOPT_LOOKUP_STR(note, config->args, "-set_note", false, false); 148 151 149 152 // default … … 265 268 workdir ? workdir : raw_workdir, 266 269 label ? label : raw_label, 270 data_group ? data_group : (label ? label : raw_label), 271 dist_group, 267 272 reduction ? reduction : raw_reduction, 268 273 // expgroup ? expgroup : raw_expgroup, … … 271 276 dvodb ? dvodb : raw_dvodb, 272 277 tess_id ? tess_id : raw_tess_id, 273 end_stage ? end_stage : raw_end_stage 278 end_stage ? end_stage : raw_end_stage, 279 note 274 280 )) { 275 281 if (!psDBRollback(config->dbh)) { … … 303 309 PXOPT_COPY_STR(config->args, where, "-label", "chipRun.label", "=="); 304 310 PXOPT_COPY_STR(config->args, where, "-state", "chipRun.state", "=="); 305 306 if (!psListLength(where->list) && 307 !psMetadataLookupBool(NULL, config->args, "-all")) { 311 PXOPT_COPY_STR(config->args, where, "-data_group", "chipRun.data_group", "=="); 312 PXOPT_COPY_STR(config->args, where, "-dist_group", "chipRun.dist_group", "=="); 313 314 if (!psListLength(where->list)) { 308 315 psFree(where); 309 where = NULL;310 316 psError(PXTOOLS_ERR_DATA, false, "search parameters are required"); 311 317 return false; 312 318 } 313 314 PXOPT_LOOKUP_STR(state, config->args, "-set_state", false, false); 315 PXOPT_LOOKUP_STR(label, config->args, "-set_label", false, false); 316 317 if ((!state) && (!label)) { 318 psError(PXTOOLS_ERR_DATA, false, "parameters are required"); 319 psFree(where); 320 return false; 321 } 322 323 if (state) { 324 // set chipRun.state to state 325 if (!pxchipRunSetStateByQuery(config, where, state)) { 326 psFree(where); 327 return false; 328 } 329 } 330 331 if (label) { 332 // set chipRun.label to label 333 if (!pxchipRunSetLabelByQuery(config, where, label)) { 334 psFree(where); 335 return false; 336 } 337 } 338 319 psString query = psStringCopy("UPDATE chipRun JOIN rawExp USING(exp_id)"); 320 321 // pxUpdateRun gets parameters from config->args and updates 322 bool result = pxUpdateRun(config, where, &query, true); 323 if (!result) { 324 psError(PXTOOLS_ERR_DATA, false, "pxUpdateRun failed"); 325 } 326 327 psFree(query); 339 328 psFree(where); 340 329 341 return true;330 return result; 342 331 } 343 332 … … 1258 1247 chipRun->workdir, 1259 1248 chipRun->label, 1249 chipRun->data_group, 1250 chipRun->dist_group, 1260 1251 chipRun->reduction, 1261 1252 chipRun->expgroup, 1262 1253 chipRun->dvodb, 1263 1254 chipRun->tess_id, 1264 chipRun->end_stage 1255 chipRun->end_stage, 1256 NULL // note does not propagate 1265 1257 )) { 1266 1258 if (!psDBRollback(config->dbh)) { -
trunk/ippTools/src/chiptoolConfig.c
r25822 r25835 58 58 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_tess_id", 0, "define tessellation identifier", NULL); 59 59 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_end_stage", 0, "define end stage", NULL); 60 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_data_group", 0, "define data group", NULL); 61 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_dist_group", 0, "define distribution group", NULL); 62 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_note", 0, "define note", NULL); 60 63 psMetadataAddBool(definebyqueryArgs, PS_LIST_TAIL, "-pretend", 0, "do not actually modify the database", false); 61 64 psMetadataAddBool(definebyqueryArgs, PS_LIST_TAIL, "-simple", 0, "use the simple output format", false); 62 psMetadataAddBool(definebyqueryArgs, PS_LIST_TAIL, "-all", 0, "allow everything to be queued without search terms", false);63 65 64 66 // -updaterun … … 67 69 psMetadataAddS64(updaterunArgs, PS_LIST_TAIL, "-chip_id", 0, "search by chip ID", 0); 68 70 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-state", 0, "search by state", NULL); 69 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-label", 0, "search by label", NULL); 71 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-label", 0, "search by label", NULL); 72 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-data_group", 0, "search by data_group", NULL); 73 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-dist_group", 0, "search by dist_group", NULL); 70 74 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_state", 0, "set state", NULL); 71 75 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_label", 0, "set label", NULL); 72 psMetadataAddBool(updaterunArgs, PS_LIST_TAIL, "-all", 0, "allow everything to be queued without search terms", false); 76 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_data_group", 0, "set data group", NULL); 77 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_dist_group", 0, "set dist group", NULL); 78 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_note", 0, "set note", NULL); 73 79 74 80 // -pendingimfile -
trunk/ippTools/src/difftool.c
r25800 r25835 51 51 52 52 static bool setdiffRunState(pxConfig *config, psS64 diff_id, const char *state, psS64 magicked); 53 static bool setdiffRunStateByLabel(pxConfig *config, const char* label, const char *state);54 53 static bool change_skyfile_data_state(pxConfig *config, psString data_state, psString run_state); 55 54 static bool tocleanedskyfileMode(pxConfig *config); … … 126 125 127 126 // required options 128 PXOPT_LOOKUP_STR(workdir, config->args, "- workdir", true, false);127 PXOPT_LOOKUP_STR(workdir, config->args, "-set_workdir", true, false); 129 128 PXOPT_LOOKUP_STR(tess_id, config->args, "-tess_id", true, false); 130 129 PXOPT_LOOKUP_BOOL(bothways, config->args, "-bothways", false); 131 130 PXOPT_LOOKUP_BOOL(exposure, config->args, "-exposure", false); 132 PXOPT_LOOKUP_STR(label, config->args, "-label", false, false); 133 PXOPT_LOOKUP_STR(reduction, config->args, "-reduction", false, false); 131 PXOPT_LOOKUP_STR(label, config->args, "-set_label", false, false); 132 PXOPT_LOOKUP_STR(data_group, config->args, "-set_data_group", false, false); 133 PXOPT_LOOKUP_STR(dist_group, config->args, "-set_dist_group", false, false); 134 PXOPT_LOOKUP_STR(reduction, config->args, "-rset_eduction", false, false); 135 PXOPT_LOOKUP_STR(note, config->args, "-set_note", false, false); 134 136 135 137 // default … … 142 144 workdir, 143 145 label, 146 data_group ? data_group : label, 147 dist_group, 144 148 reduction, 145 149 NULL, // dvodb … … 148 152 bothways, 149 153 exposure, 150 false 154 false, 155 note 151 156 ); 152 157 if (!run) { … … 179 184 PS_ASSERT_PTR_NON_NULL(config, false); 180 185 186 psMetadata *where = psMetadataAlloc(); 187 188 PXOPT_COPY_S64(config->args, where, "-diff_id", "stack_id", "=="); 189 PXOPT_COPY_STR(config->args, where, "-label", "label", "=="); 190 PXOPT_COPY_STR(config->args, where, "-state", "state", "=="); 191 if (!psListLength(where->list)) { 192 psFree(where); 193 psError(PXTOOLS_ERR_DATA, false, "search parameters are required"); 194 return false; 195 } 196 197 psString query = psStringCopy("UPDATE diffRun"); 198 199 // pxUpdateRun gets parameters from config->args and updates 200 bool result = pxUpdateRun(config, where, &query, true); 201 202 psFree(query); 203 psFree(where); 204 205 return result; 206 207 #ifdef notdef 181 208 // required options 182 209 PXOPT_LOOKUP_S64(diff_id, config->args, "-diff_id", false, false); … … 197 224 198 225 return false; 226 #endif 199 227 } 200 228 … … 907 935 908 936 937 #ifdef notdef 909 938 static bool setdiffRunStateByLabel(pxConfig *config, const char *label, const char *state) { 910 939 PS_ASSERT_PTR_NON_NULL(state,false); … … 925 954 return true; 926 955 } 956 #endif 927 957 928 958 // Generate a single populated run … … 932 962 const char *tess_id, // Tessellation identifier 933 963 const char *label, // label 964 const char *data_group, // data_group 965 const char *dist_group, // dist_group 934 966 const char *reduction, // reduction 967 const char *note, // note 935 968 psS64 input_warp_id, // Warp identifier for input image, PS_MAX_S64 for none 936 969 psS64 input_stack_id, // Stack identifier for input image, PS_MAX_S64 for none … … 963 996 workdir, 964 997 label, 998 data_group ? data_group : label, 999 dist_group, 965 1000 reduction, 966 1001 NULL, // dvodb … … 969 1004 false, 970 1005 false, 971 0 // magicked 1006 0, // magicked 1007 note 972 1008 ); 973 1009 … … 1043 1079 PXOPT_LOOKUP_STR(tess_id, config->args, "-tess_id", true, false); // required options 1044 1080 PXOPT_LOOKUP_STR(label, config->args, "-label", false, false); 1081 PXOPT_LOOKUP_STR(data_group, config->args, "-set_data_group", false, false); 1082 PXOPT_LOOKUP_STR(dist_group, config->args, "-set_dist_group", false, false); 1045 1083 PXOPT_LOOKUP_STR(reduction, config->args, "-reduction", false, false); 1046 1084 PXOPT_LOOKUP_S64(template_warp_id, config->args, "-template_warp_id", false, false); … … 1049 1087 PXOPT_LOOKUP_S64(input_stack_id, config->args, "-input_stack_id", false, false); 1050 1088 PXOPT_LOOKUP_BOOL(simple, config->args, "-simple", false); 1089 PXOPT_LOOKUP_STR(note, config->args, "-set_note", false, false); 1051 1090 1052 1091 if (template_stack_id && template_warp_id) { … … 1072 1111 psArray *list = psArrayAllocEmpty(16); // List of runs, to print 1073 1112 1074 if (!populatedrun(list, workdir, skycell_id, tess_id, label, reduction,1113 if (!populatedrun(list, workdir, skycell_id, tess_id, label, data_group ? data_group : label, dist_group, reduction, note, 1075 1114 input_warp_id ? input_warp_id : PS_MAX_S64, 1076 1115 input_stack_id ? input_stack_id : PS_MAX_S64, … … 1111 1150 PXOPT_COPY_STR(config->args, stackWhere, "-stack_label", "stackRun.label", "=="); 1112 1151 1113 PXOPT_LOOKUP_STR(workdir, config->args, "-workdir", true, false); // required options 1114 PXOPT_LOOKUP_STR(reduction, config->args, "-reduction", false, false); // option 1115 PXOPT_LOOKUP_STR(label, config->args, "-label", false, false); // option 1116 PXOPT_LOOKUP_TIME(registered, config->args, "-registered", false, false); 1152 PXOPT_LOOKUP_STR(workdir, config->args, "-set_workdir", true, false); // required option 1153 PXOPT_LOOKUP_STR(reduction, config->args, "-set_reduction", false, false); // option 1154 PXOPT_LOOKUP_STR(label, config->args, "-set_label", false, false); // option 1155 PXOPT_LOOKUP_STR(data_group, config->args, "-set_data_group", false, false); 1156 PXOPT_LOOKUP_STR(dist_group, config->args, "-set_dist_group", false, false); 1157 PXOPT_LOOKUP_STR(note, config->args, "-set_note", false, false); 1158 PXOPT_LOOKUP_TIME(registered, config->args, "-set_registered", false, false); 1159 1117 1160 PXOPT_LOOKUP_BOOL(simple, config->args, "-simple", false); 1118 1161 PXOPT_LOOKUP_BOOL(newTemplates, config->args, "-new-templates", false); … … 1350 1393 workdir, 1351 1394 label, 1395 data_group ? data_group : label, 1396 dist_group, 1352 1397 reduction, 1353 1398 NULL, // dvodb … … 1356 1401 false, // bothways 1357 1402 true, // exposure 1358 0 // magicked 1403 0, // magicked 1404 note 1359 1405 ); 1360 1406 … … 1425 1471 } 1426 1472 1427 if ( !diffRunPrintObjects(stdout, list, !simple)) {1473 if (numGood && !diffRunPrintObjects(stdout, list, !simple)) { 1428 1474 psError(PS_ERR_UNKNOWN, false, "failed to print object"); 1429 1475 psFree(list); … … 1506 1552 1507 1553 // Settings to apply to defined run 1508 PXOPT_LOOKUP_STR(workdir, config->args, "-workdir", true, false); // required options 1509 PXOPT_LOOKUP_STR(reduction, config->args, "-reduction", false, false); // option 1510 PXOPT_LOOKUP_STR(label, config->args, "-label", false, false); // option 1511 PXOPT_LOOKUP_TIME(registered, config->args, "-registered", false, false); 1554 PXOPT_LOOKUP_STR(workdir, config->args, "-set_workdir", true, false); // required options 1555 PXOPT_LOOKUP_STR(reduction, config->args, "-set_reduction", false, false); // option 1556 PXOPT_LOOKUP_STR(label, config->args, "-set_label", false, false); // option 1557 PXOPT_LOOKUP_STR(data_group, config->args, "-set_data_group", false, false); // option 1558 PXOPT_LOOKUP_STR(dist_group, config->args, "-set_dist_group", false, false); // option 1559 PXOPT_LOOKUP_STR(note, config->args, "-set_note", false, false); // option 1560 PXOPT_LOOKUP_TIME(registered, config->args, "-set_registered", false, false); 1561 1512 1562 PXOPT_LOOKUP_BOOL(simple, config->args, "-simple", false); 1513 1563 PXOPT_LOOKUP_BOOL(pretend, config->args, "-pretend", false); … … 1693 1743 } 1694 1744 1695 diffRunRow *run = diffRunRowAlloc(0, "reg", workdir, label, reduction, NULL, registered,1696 tess_id, true, true, false ); // Run to insert1745 diffRunRow *run = diffRunRowAlloc(0, "reg", workdir, label, data_group ? data_group : label, dist_group, reduction, NULL, registered, 1746 tess_id, true, true, false, note); // Run to insert 1697 1747 if (!diffRunInsertObject(config->dbh, run)) { 1698 1748 psError(PS_ERR_UNKNOWN, false, "database error"); -
trunk/ippTools/src/difftoolConfig.c
r25800 r25835 47 47 // -definerun 48 48 psMetadata *definerunArgs = psMetadataAlloc(); 49 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "- workdir", 0,"define workdir (required)", NULL);49 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-set_workdir", 0, "define workdir (required)", NULL); 50 50 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-tess_id", 0, "define tessellation ID (required)", NULL); 51 psMetadataAddBool(definerunArgs, PS_LIST_TAIL, "-bothways", 0, "do the subtraction both ways?", false); 52 psMetadataAddBool(definerunArgs, PS_LIST_TAIL, "-exposure", 0, "subtraction for entire exposure?", false); 53 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-label", 0, "define label", NULL); 54 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-reduction", 0, "define reduction class", NULL); 55 psMetadataAddTime(definerunArgs, PS_LIST_TAIL, "-registered", 0, "time detrend run was registered", now); 51 psMetadataAddBool(definerunArgs, PS_LIST_TAIL, "-bothways", 0, "do the subtraction both ways?", false); 52 psMetadataAddBool(definerunArgs, PS_LIST_TAIL, "-exposure", 0, "subtraction for entire exposure?", false); 53 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-set_label", 0, "define label", NULL); 54 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-set_reduction", 0, "define reduction class", NULL); 55 psMetadataAddTime(definerunArgs, PS_LIST_TAIL, "-set_registered", 0, "time detrend run was registered", now); 56 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-set_data_group", 0, "define data group", NULL); 57 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-set_dist_group", 0, "define dist group", NULL); 58 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-set_note", 0, "define note", NULL); 56 59 psMetadataAddBool(definerunArgs, PS_LIST_TAIL, "-simple", 0, "use the simple output format", false); 57 60 … … 61 64 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-state", 0, "set state (required)", NULL); 62 65 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-label", 0, "define by label instead of diff ID", 0); 63 66 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_label", 0, "define new value for label", 0); 67 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_state", 0, "define new state", NULL); 68 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_data_group", 0, "define new data_group", NULL); 69 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_dist_group", 0, "define new dist_group", NULL); 70 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_note", 0, "define new note", NULL); 71 64 72 // -addinputskyfile 65 73 psMetadata *addinputskyfileArgs = psMetadataAlloc(); … … 175 183 psMetadataAddStr(definewarpstackArgs, PS_LIST_TAIL, "-warp_label", 0, "search by warp label", NULL); 176 184 psMetadataAddF32(definewarpstackArgs, PS_LIST_TAIL, "-good_frac", 0, "minimum good fraction of skycell", NAN); 177 psMetadataAddStr(definewarpstackArgs, PS_LIST_TAIL, "-workdir", 0, "define workdir (required)", NULL); 178 psMetadataAddStr(definewarpstackArgs, PS_LIST_TAIL, "-label", 0, "define label", NULL); 179 psMetadataAddStr(definewarpstackArgs, PS_LIST_TAIL, "-reduction", 0, "define reduction class", NULL); 180 psMetadataAddTime(definewarpstackArgs, PS_LIST_TAIL, "-registered", 0, "time detrend run was registered", now); 185 psMetadataAddStr(definewarpstackArgs, PS_LIST_TAIL, "-set_workdir", 0, "define workdir (required)", NULL); 186 psMetadataAddStr(definewarpstackArgs, PS_LIST_TAIL, "-set_label", 0, "define label", NULL); 187 psMetadataAddStr(definewarpstackArgs, PS_LIST_TAIL, "-set_reduction", 0, "define reduction class", NULL); 188 psMetadataAddTime(definewarpstackArgs, PS_LIST_TAIL, "-set_registered", 0, "time detrend run was registered", now); 189 psMetadataAddStr(definewarpstackArgs, PS_LIST_TAIL, "-set_data_group", 0, "define data group", NULL); 190 psMetadataAddStr(definewarpstackArgs, PS_LIST_TAIL, "-set_dist_group", 0, "define dist group", NULL); 191 psMetadataAddStr(definewarpstackArgs, PS_LIST_TAIL, "-set_note", 0, "define note", NULL); 181 192 psMetadataAddBool(definewarpstackArgs, PS_LIST_TAIL, "-new-templates", 0, "also search for diffs with new template", false); 182 193 psMetadataAddBool(definewarpstackArgs, PS_LIST_TAIL, "-rerun", 0, "define new run even if one exists", false); … … 198 209 psMetadataAddStr(definewarpwarpArgs, PS_LIST_TAIL, "-template_label", 0, "search by warp label for template", NULL); 199 210 psMetadataAddF32(definewarpwarpArgs, PS_LIST_TAIL, "-good_frac", 0, "minimum good fraction of skycell", NAN); 200 psMetadataAddStr(definewarpwarpArgs, PS_LIST_TAIL, "-workdir", 0, "define workdir (required)", NULL); 201 psMetadataAddStr(definewarpwarpArgs, PS_LIST_TAIL, "-label", 0, "define label", NULL); 202 psMetadataAddStr(definewarpwarpArgs, PS_LIST_TAIL, "-reduction", 0, "define reduction class", NULL); 203 psMetadataAddTime(definewarpwarpArgs, PS_LIST_TAIL, "-registered", 0, "time detrend run was registered", now); 211 psMetadataAddStr(definewarpwarpArgs, PS_LIST_TAIL, "-set_workdir", 0, "define workdir (required)", NULL); 212 psMetadataAddStr(definewarpwarpArgs, PS_LIST_TAIL, "-set_label", 0, "define label", NULL); 213 psMetadataAddStr(definewarpwarpArgs, PS_LIST_TAIL, "-set_reduction", 0, "define reduction class", NULL); 214 psMetadataAddTime(definewarpwarpArgs, PS_LIST_TAIL, "-set_registered", 0, "time detrend run was registered", now); 215 psMetadataAddStr(definewarpwarpArgs, PS_LIST_TAIL, "-set_data_group", 0, "define data group", NULL); 216 psMetadataAddStr(definewarpwarpArgs, PS_LIST_TAIL, "-set_dist_group", 0, "define dist group", NULL); 217 psMetadataAddStr(definewarpwarpArgs, PS_LIST_TAIL, "-set_note", 0, "define note", NULL); 204 218 psMetadataAddBool(definewarpwarpArgs, PS_LIST_TAIL, "-rerun", 0, "define new run even if one exists", false); 205 219 psMetadataAddBool(definewarpwarpArgs, PS_LIST_TAIL, "-available", 0, "define new run even if warpRun has some faults", false); -
trunk/ippTools/src/disttool.c
r25567 r25835 32 32 33 33 static bool definebyqueryMode(pxConfig *config); 34 static bool definerunMode(pxConfig *config);35 34 static bool updaterunMode(pxConfig *config); 36 35 static bool revertrunMode(pxConfig *config); … … 79 78 switch (config->mode) { 80 79 MODECASE(DISTTOOL_MODE_DEFINEBYQUERY, definebyqueryMode); 81 MODECASE(DISTTOOL_MODE_DEFINERUN, definerunMode);82 80 MODECASE(DISTTOOL_MODE_UPDATERUN, updaterunMode); 83 81 MODECASE(DISTTOOL_MODE_REVERTRUN, revertrunMode); … … 123 121 } 124 122 125 static bool definerunMode(pxConfig *config)126 {127 PS_ASSERT_PTR_NON_NULL(config, false);128 129 // required130 PXOPT_LOOKUP_STR(stage, config->args, "-stage", true, false);131 PXOPT_LOOKUP_S64(stage_id, config->args, "-stage_id", true, false);132 PXOPT_LOOKUP_STR(outroot, config->args, "-outroot", true, false);133 PXOPT_LOOKUP_S64(target_id, config->args, "-target_id", true, false);134 135 // optional136 PXOPT_LOOKUP_BOOL(clean, config->args, "-clean", false);137 PXOPT_LOOKUP_BOOL(no_magic, config->args, "-no_magic", false);138 PXOPT_LOOKUP_STR(set_label, config->args, "-set_label", false, false);139 140 // TODO: check that stage has an expected value141 // XXX: all of the following concerns will be managed properly by definebyquery142 143 // TODO: should we check that stage_id actually exists for stage144 // in magicdstool we queue off of a magic_id so the stage_id, exp_id, and cam_id get looked up145 // when the run is queued146 147 if (!distRunInsert(config->dbh,148 0, // dist_id149 target_id,150 stage,151 stage_id,152 0,153 set_label,154 outroot,155 clean,156 no_magic,157 "new",158 NULL, // time_stamp159 0 // fault160 )) {161 psError(PS_ERR_UNKNOWN, false, "database error");162 return false;163 }164 165 return true;166 }167 123 168 124 static bool definebyqueryMode(pxConfig *config) … … 178 134 PXOPT_LOOKUP_BOOL(no_magic, config->args, "-no_magic", false); 179 135 PXOPT_LOOKUP_STR(set_label, config->args, "-set_label", false, false); 136 PXOPT_LOOKUP_STR(set_note, config->args, "-set_note", false, false); 137 180 138 PXOPT_LOOKUP_S64(limit, config->args, "-limit", false, false); 181 139 PXOPT_LOOKUP_BOOL(simple, config->args, "-simple", false); … … 191 149 192 150 PXOPT_LOOKUP_STR(label, config->args, "-label", false, false); 151 PXOPT_LOOKUP_STR(dist_group, config->args, "-dist_group", false, false); 193 152 194 153 psString query = NULL; … … 209 168 psStringAppend(&query, " AND (chipRun.label = '%s')", label); 210 169 } 170 if (dist_group) { 171 psStringAppend(&query, " AND (chipRun.dist_group = '%s')", dist_group); 172 } 211 173 } else if (!strcmp(stage, "chip")) { 212 174 magicRunType = "chipRun"; … … 222 184 psStringAppend(&query, " AND (chipRun.label = '%s')", label); 223 185 } 186 if (dist_group) { 187 psStringAppend(&query, " AND (chipRun.dist_group = '%s')", dist_group); 188 } 224 189 } else if (!strcmp(stage, "camera")) { 225 190 magicRunType = "camRun"; // This is used below to set the magicked business … … 235 200 psStringAppend(&query, " AND (camRun.label = '%s')", label); 236 201 } 202 if (dist_group) { 203 psStringAppend(&query, " AND (camRun.dist_group = '%s')", dist_group); 204 } 237 205 } else if (!strcmp(stage, "fake")) { 238 206 magicRunType = "fakeRun"; … … 246 214 if (label) { 247 215 psStringAppend(&query, " AND (fakeRun.label = '%s')", label); 216 } 217 if (dist_group) { 218 psStringAppend(&query, " AND (fakeRun.dist_group = '%s')", dist_group); 248 219 } 249 220 // fake stage doesn't require magic … … 262 233 psStringAppend(&query, " AND (warpRun.label = '%s')", label); 263 234 } 235 if (dist_group) { 236 psStringAppend(&query, " AND (warpRun.dist_group = '%s')", dist_group); 237 } 264 238 265 239 } else if (!strcmp(stage, "diff")) { … … 276 250 psStringAppend(&query, " AND (diffRun.label = '%s')", label); 277 251 } 252 if (dist_group) { 253 psStringAppend(&query, " AND (diffRun.dist_group = '%s')", dist_group); 254 } 278 255 279 256 } else if (!strcmp(stage, "stack")) { … … 288 265 if (label) { 289 266 psStringAppend(&query, " AND (stackRun.label = '%s')", label); 267 } 268 if (dist_group) { 269 psStringAppend(&query, " AND (stackRun.dist_group = '%s')", dist_group); 290 270 } 291 271 // stack stage doesn't require magic … … 371 351 psS64 magic_ds_id = psMetadataLookupS64(NULL, md, "magicked"); 372 352 psS64 target_id = psMetadataLookupS64(NULL, md, "target_id"); 373 psString target_label = psMetadataLookupStr(NULL, md, "label");353 psString stage_label = psMetadataLookupStr(NULL, md, "label"); 374 354 bool clean = psMetadataLookupBool(NULL, md, "clean"); 375 355 … … 381 361 new_label = set_label; 382 362 } else { 383 new_label = target_label;363 new_label = stage_label; 384 364 } 385 365 distRunRow *row = distRunRowAlloc( … … 395 375 "new", 396 376 NULL, // time_stamp 397 0 // fault 377 0, // fault 378 set_note // note does not propagate 398 379 ); 399 380 … … 1239 1220 1240 1221 // required 1241 PXOPT_LOOKUP_STR( label, config->args, "-label", true, false);1222 PXOPT_LOOKUP_STR(dist_group, config->args, "-dist_group", true, false); 1242 1223 PXOPT_LOOKUP_STR(filter, config->args, "-filter", true, false); 1243 1224 PXOPT_LOOKUP_STR(stage, config->args, "-stage", true, false); … … 1250 1231 distTargetRow *row = distTargetRowAlloc( 1251 1232 0, // target_id 1252 label,1233 dist_group, 1253 1234 filter, 1254 1235 stage, … … 1287 1268 psMetadata *where = psMetadataAlloc(); 1288 1269 PXOPT_COPY_S64(config->args, where, "-target_id", "target_id", "=="); 1289 PXOPT_COPY_STR(config->args, where, "- label", "label", "==");1270 PXOPT_COPY_STR(config->args, where, "-dist_group", "dist_group", "=="); 1290 1271 PXOPT_COPY_STR(config->args, where, "-filter", "filter", "=="); 1291 1272 PXOPT_COPY_STR(config->args, where, "-stage", "stage", "=="); … … 1323 1304 psMetadata *where = psMetadataAlloc(); 1324 1305 PXOPT_COPY_S64(config->args, where, "-target_id", "target_id", "=="); 1325 PXOPT_COPY_STR(config->args, where, "- label", "label", "==");1306 PXOPT_COPY_STR(config->args, where, "-dist_group", "dist_group", "LIKE"); 1326 1307 PXOPT_COPY_STR(config->args, where, "-filter", "filter", "=="); 1327 1308 PXOPT_COPY_STR(config->args, where, "-stage", "stage", "=="); … … 1518 1499 PXOPT_LOOKUP_S64(target_id, config->args, "-target_id", false, false); 1519 1500 PXOPT_LOOKUP_STR(stage, config->args, "-stage", false, false); 1520 PXOPT_LOOKUP_STR( label, config->args, "-label", false, false);1501 PXOPT_LOOKUP_STR(dist_group, config->args, "-dist_group", false, false); 1521 1502 PXOPT_LOOKUP_STR(filter, config->args, "-filter", false, false); 1522 1503 PXOPT_LOOKUP_BOOL(clean, config->args, "-clean", false); … … 1528 1509 error = true; 1529 1510 } 1530 if (! label) {1531 psError(PS_ERR_UNKNOWN, !error, " labelis required if target_id is not supplied");1511 if (!dist_group) { 1512 psError(PS_ERR_UNKNOWN, !error, "dist_group is required if target_id is not supplied"); 1532 1513 error = true; 1533 1514 } … … 1539 1520 // optional 1540 1521 PXOPT_LOOKUP_S64(limit, config->args, "-limit", false, false); 1541 PXOPT_LOOKUP_STR(state, config->args, "-set_state", false, false);1522 PXOPT_LOOKUP_STR(state, config->args, "-set_state", false, false); 1542 1523 if (state) { 1543 1524 if (strcmp(state, "enabled") && strcmp(state, "disabled")) { … … 1555 1536 PXOPT_COPY_STR(config->args, where, "-dest_name", "rcDestination.name", "=="); 1556 1537 PXOPT_COPY_S64(config->args, where, "-target_id", "target_id", "=="); 1557 PXOPT_COPY_STR(config->args, where, "- label", "label", "LIKE");1538 PXOPT_COPY_STR(config->args, where, "-dist_group", "dist_group", "LIKE"); 1558 1539 PXOPT_COPY_STR(config->args, where, "-filter", "filter", "LIKE"); 1559 1540 PXOPT_COPY_STR(config->args, where, "-stage", "stage", "=="); … … 1658 1639 PXOPT_COPY_S64(config->args, where, "-target_id", "target_id", "=="); 1659 1640 PXOPT_COPY_STR(config->args, where, "-stage", "stage", "=="); 1660 PXOPT_COPY_STR(config->args, where, "- label", "label", "LIKE");1641 PXOPT_COPY_STR(config->args, where, "-dist_group", "dist_group", "LIKE"); 1661 1642 PXOPT_COPY_STR(config->args, where, "-filter", "filter", "LIKE"); 1662 1643 PXOPT_COPY_STR(config->args, where, "-state", "state", "=="); -
trunk/ippTools/src/disttool.h
r25510 r25835 26 26 DISTTOOL_MODE_NONE = 0x0, 27 27 DISTTOOL_MODE_DEFINEBYQUERY, 28 DISTTOOL_MODE_DEFINERUN,29 28 DISTTOOL_MODE_UPDATERUN, 30 29 DISTTOOL_MODE_REVERTRUN, -
trunk/ippTools/src/disttoolConfig.c
r25567 r25835 50 50 psMetadataAddBool(definebyqueryArgs, PS_LIST_TAIL, "-no_magic", 0, "magic is not needed", false); 51 51 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_label", 0, "define label for run", NULL); 52 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_note", 0, "select by dist_group", NULL); 52 53 53 54 psMetadataAddBool(definebyqueryArgs, PS_LIST_TAIL, "-dry_run", 0, "don't queue runs just display what would be selected", false); … … 58 59 psMetadataAddS64(definebyqueryArgs, PS_LIST_TAIL, "-chip_id", 0, "define chip_id", 0); 59 60 psMetadataAddS64(definebyqueryArgs, PS_LIST_TAIL, "-magic_ds_id", 0, "define chip_id", 0); 60 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-label", 0, "select by label", NULL); 61 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-label", 0, "select by run label", NULL); 62 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-dist_group", 0, "select by dist_group", NULL); 61 63 62 64 psMetadataAddU64(definebyqueryArgs, PS_LIST_TAIL, "-limit", 0, "limit result set to N items", 0); 63 65 psMetadataAddBool(definebyqueryArgs, PS_LIST_TAIL, "-simple", 0, "use the simple output format", false); 64 65 // -definerun66 psMetadata *definerunArgs = psMetadataAlloc();67 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-stage", 0, "define stage for bundle (required)", NULL);68 psMetadataAddS64(definerunArgs, PS_LIST_TAIL, "-stage_id", 0, "define stage_id (required)", 0);69 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-outroot", 0, "define output destination (required)", NULL);70 psMetadataAddS64(definerunArgs, PS_LIST_TAIL, "-target_id", 0, "define target_id (required)", 0);71 psMetadataAddBool(definerunArgs, PS_LIST_TAIL, "-clean", 0, "build clean distribution bundle", false);72 psMetadataAddBool(definerunArgs, PS_LIST_TAIL, "-no_magic", 0, "magic is not needed", false);73 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-set_label", 0, "define label for run", NULL);74 66 75 67 // -updaterun … … 139 131 psMetadataAddS64(pendingfilesetArgs, PS_LIST_TAIL, "-dist_id", 0, "define dist_id", 0); 140 132 psMetadataAddStr(pendingfilesetArgs, PS_LIST_TAIL, "-label", PS_META_DUPLICATE_OK, "limit results to label", NULL); 133 psMetadataAddStr(pendingfilesetArgs, PS_LIST_TAIL, "-dist_group", PS_META_DUPLICATE_OK, "limit results to dist_group", NULL); 141 134 psMetadataAddStr(pendingfilesetArgs, PS_LIST_TAIL, "-stage", 0, "limit results to runs for stage", NULL); 142 135 psMetadataAddU64(pendingfilesetArgs, PS_LIST_TAIL, "-limit", 0, "limit result set to N items", 0); … … 219 212 // -definetarget 220 213 psMetadata *definetargetArgs = psMetadataAlloc(); 221 psMetadataAddStr(definetargetArgs, PS_LIST_TAIL, "- label", 0, "define label(required)", NULL);214 psMetadataAddStr(definetargetArgs, PS_LIST_TAIL, "-dist_group", 0, "define dist_group (required)", NULL); 222 215 psMetadataAddStr(definetargetArgs, PS_LIST_TAIL, "-filter", 0, "define filter (required)", NULL); 223 216 psMetadataAddStr(definetargetArgs, PS_LIST_TAIL, "-stage", 0, "define stage (required)", NULL); … … 230 223 psMetadataAddS64(updatetargetArgs, PS_LIST_TAIL, "-target_id", 0, "define target_id", 0); 231 224 psMetadataAddStr(updatetargetArgs, PS_LIST_TAIL, "-stage", 0, "define stage", NULL); 232 psMetadataAddStr(updatetargetArgs, PS_LIST_TAIL, "-set_state", 0, "define state", NULL); 233 psMetadataAddStr(updatetargetArgs, PS_LIST_TAIL, "-label", 0, "define label", NULL); 225 psMetadataAddStr(updatetargetArgs, PS_LIST_TAIL, "-dist_group", 0, "define dist_group", NULL); 234 226 psMetadataAddStr(updatetargetArgs, PS_LIST_TAIL, "-filter", 0, "define filter", NULL); 227 228 psMetadataAddStr(updatetargetArgs, PS_LIST_TAIL, "-set_state", 0, "define new state", NULL); 235 229 236 230 // -listtarget 237 231 psMetadata *listtargetArgs = psMetadataAlloc(); 238 232 psMetadataAddS64(listtargetArgs, PS_LIST_TAIL, "-target_id", 0, "list target with target_id", 0); 239 psMetadataAddStr(listtargetArgs, PS_LIST_TAIL, "- label", 0, "list targets for label", NULL);233 psMetadataAddStr(listtargetArgs, PS_LIST_TAIL, "-dist_group", 0, "list targets for dist_group", NULL); 240 234 psMetadataAddStr(listtargetArgs, PS_LIST_TAIL, "-filter", 0, "define filter", NULL); 241 235 psMetadataAddStr(listtargetArgs, PS_LIST_TAIL, "-stage", 0, "list targets for stage", NULL); … … 252 246 psMetadataAddS64(defineinterestArgs, PS_LIST_TAIL, "-target_id", 0, "define target_id", 0); 253 247 psMetadataAddStr(defineinterestArgs, PS_LIST_TAIL, "-stage", 0, "define stage", NULL); 254 psMetadataAddStr(defineinterestArgs, PS_LIST_TAIL, "- label", 0, "define label", NULL);248 psMetadataAddStr(defineinterestArgs, PS_LIST_TAIL, "-dist_group", 0, "define dist_group", NULL); 255 249 psMetadataAddStr(defineinterestArgs, PS_LIST_TAIL, "-filter", 0, "define filter (LIKE comparison)", NULL); 256 250 psMetadataAddBool(defineinterestArgs, PS_LIST_TAIL,"-clean", 0, "list clean targets", false); … … 271 265 psMetadataAddS64(listinterestsArgs, PS_LIST_TAIL, "-int_id", 0, "list interests with int_id", 0); 272 266 psMetadataAddStr(listinterestsArgs, PS_LIST_TAIL, "-dest_name", 0, "list interests for destinationn name)", NULL); 273 psMetadataAddStr(listinterestsArgs, PS_LIST_TAIL, "- label", 0, "list interests for label(LIKE comparison)", NULL);267 psMetadataAddStr(listinterestsArgs, PS_LIST_TAIL, "-dist_group", 0, "list interests for dist_group (LIKE comparison)", NULL); 274 268 psMetadataAddStr(listinterestsArgs, PS_LIST_TAIL, "-filter", 0, "list interests by filter (LIKE comparison)", NULL); 275 269 psMetadataAddStr(listinterestsArgs, PS_LIST_TAIL, "-stage", 0, "list interests for stage", NULL); … … 284 278 285 279 PXOPT_ADD_MODE("-definebyquery", "", DISTTOOL_MODE_DEFINEBYQUERY, definebyqueryArgs); 286 PXOPT_ADD_MODE("-definerun", "", DISTTOOL_MODE_DEFINERUN, definerunArgs);287 280 PXOPT_ADD_MODE("-updaterun", "", DISTTOOL_MODE_UPDATERUN, updaterunArgs); 288 281 PXOPT_ADD_MODE("-revertrun", "", DISTTOOL_MODE_REVERTRUN, revertrunArgs); -
trunk/ippTools/src/faketool.c
r25324 r25835 177 177 PXOPT_LOOKUP_STR(tess_id, config->args, "-set_tess_id", false, false); 178 178 PXOPT_LOOKUP_STR(end_stage, config->args, "-set_end_stage", false, false); 179 PXOPT_LOOKUP_STR(data_group, config->args, "-set_data_group", false, false); 180 PXOPT_LOOKUP_STR(dist_group, config->args, "-set_dist_group", false, false); 181 PXOPT_LOOKUP_STR(note, config->args, "-set_note", false, false); 179 182 180 183 // default … … 265 268 266 269 // queue the exp 267 if (!pxfakeQueueByCamID(config, cam_id, workdir, label, reduction, expgroup, dvodb, tess_id, end_stage)) {270 if (!pxfakeQueueByCamID(config, cam_id, workdir, label, data_group ? data_group : label, dist_group, reduction, expgroup, dvodb, tess_id, end_stage, note)) { 268 271 if (!psDBRollback(config->dbh)) { 269 272 psError(PS_ERR_UNKNOWN, false, "database error"); … … 330 333 PXOPT_COPY_F32(config->args, where, "-sun_angle_max", "sun_angle", "<"); 331 334 PXOPT_COPY_STR(config->args, where, "-label", "fakeRun.label", "=="); 332 333 if (!psListLength(where->list) 334 && !psMetadataLookupBool(NULL, config->args, "-all")) { 335 PXOPT_COPY_STR(config->args, where, "-data_group", "fakeRun.data_group", "=="); 336 PXOPT_COPY_STR(config->args, where, "-dist_group", "fakeRun.dist_group", "=="); 337 338 if (!psListLength(where->list)) { 335 339 psFree(where); 336 340 where = NULL; … … 339 343 } 340 344 341 PXOPT_LOOKUP_STR(state, config->args, "-set_state", false, false); 342 PXOPT_LOOKUP_STR(label, config->args, "-set_label", false, false); 343 344 if ((!state) && (!label)) { 345 psError(PXTOOLS_ERR_DATA, false, "parameters are required"); 346 psFree(where); 347 return false; 348 } 349 350 if (state) { 351 // set fakeRun.state to state 352 if (!pxfakeRunSetStateByQuery(config, where, state)) { 353 psFree(where); 354 return false; 355 } 356 } 357 358 if (label) { 359 // set fakeRun.label to label 360 if (!pxfakeRunSetLabelByQuery(config, where, label)) { 361 psFree(where); 362 return false; 363 } 364 } 365 345 psString query = psStringCopy("UPDATE fakeRun JOIN camRun USING(cam_id) JOIN chipRun USING(chip_id) JOIN rawExp USING(exp_id)"); 346 347 // pxUpdateRun gets parameters from config->args and updates 348 bool result = pxUpdateRun(config, where, &query, true); 349 if (!result) { 350 psError(PXTOOLS_ERR_DATA, false, "pxUpdateRun failed"); 351 } 352 353 psFree(query); 366 354 psFree(where); 367 355 368 return true;356 return result; 369 357 } 370 358 … … 1162 1150 fakeRun->workdir, 1163 1151 fakeRun->label, 1152 fakeRun->data_group, 1153 fakeRun->dist_group, 1164 1154 fakeRun->dvodb, 1165 1155 fakeRun->tess_id, 1166 1156 fakeRun->reduction, 1167 fakeRun->end_stage 1157 fakeRun->end_stage, 1158 NULL // note does not propagate 1168 1159 )) { 1169 1160 psError(PS_ERR_UNKNOWN, false, "failed to queue warpRun"); -
trunk/ippTools/src/faketoolConfig.c
r25324 r25835 93 93 psMetadataAddStr(queueArgs, PS_LIST_TAIL, "-set_tess_id", 0, "define tessellation identifier", NULL); 94 94 psMetadataAddStr(queueArgs, PS_LIST_TAIL, "-set_end_stage", 0, "define end stage", NULL); 95 psMetadataAddStr(queueArgs, PS_LIST_TAIL, "-set_dist_group", 0, "define dist group", NULL); 96 psMetadataAddStr(queueArgs, PS_LIST_TAIL, "-set_data_group", 0, "define data group", NULL); 97 psMetadataAddStr(queueArgs, PS_LIST_TAIL, "-set_note", 0, "define note", NULL); 95 98 psMetadataAddBool(queueArgs, PS_LIST_TAIL, "-pretend", 0, "do not actually modify the database", false); 96 99 psMetadataAddBool(queueArgs, PS_LIST_TAIL, "-all", 0, "allow everything to be queued without search terms", false); … … 143 146 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_state", 0, "set state", NULL); 144 147 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_label", 0, "set label", NULL); 145 psMetadataAddBool(updaterunArgs, PS_LIST_TAIL, "-all", 0, "allow everything to be queued without search terms", false); 148 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_data_group", 0, "define new data_group", NULL); 149 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_dist_group", 0, "define new dist_group", NULL); 150 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_note", 0, "define new note", NULL); 146 151 147 152 // -pendingexp -
trunk/ippTools/src/flatcorr.c
r25816 r25835 133 133 PXOPT_LOOKUP_STR(tess_id, config->args, "-set_tess_id", false, false); 134 134 PXOPT_LOOKUP_STR(region, config->args, "-set_region", false, false); 135 PXOPT_LOOKUP_STR(note, config->args, "-set_note", false, false); 135 136 136 137 PXOPT_LOOKUP_BOOL(pretend, config->args, "-pretend", false); … … 235 236 236 237 // queue the exp : force this to stop at the chip stage 237 psS64 chip_id = pxchipQueueByExpTag(config, exp_id, workdir, label, reduction, expgroup, dvodb, tess_id, "chip");238 psS64 chip_id = pxchipQueueByExpTag(config, exp_id, workdir, label, label, NULL, reduction, expgroup, dvodb, tess_id, "chip", note); 238 239 if (!chip_id) { 239 240 if (!psDBRollback(config->dbh)) { … … 523 524 row->workdir, 524 525 row->label, 526 row->data_group, 527 row->dist_group, 525 528 row->reduction, 526 529 row->expgroup, 527 530 row->dvodb, 528 531 row->tess_id, 529 "camera")) { 532 "camera", 533 NULL // note does not propragate 534 )) { 530 535 if (!psDBRollback(config->dbh)) { 531 536 psError(PS_ERR_UNKNOWN, false, "database error"); … … 658 663 row->reduction, 659 664 row->label, 665 row->data_group, 660 666 row->dvodb, 667 NULL, // note is not propagated 661 668 0)) { 662 669 if (!psDBRollback(config->dbh)) { -
trunk/ippTools/src/magicdstool.c
r25822 r25835 33 33 34 34 static bool definebyqueryMode(pxConfig *config); 35 static psS64 definerunMode(pxConfig *config);36 35 static bool updaterunMode(pxConfig *config); 37 36 static bool todestreakMode(pxConfig *config); … … 46 45 47 46 static bool setmagicDSRunState(pxConfig *config, psS64 magic_id, psMetadata *where, const char *state); 48 static bool magicDSGetIDs(pxConfig *config, psString stage, psS64 magic_id, psS64 *stage_id, psS64 *cam_id);49 47 50 48 # define MODECASE(caseName, func) \ … … 67 65 switch (config->mode) { 68 66 MODECASE(MAGICDSTOOL_MODE_DEFINEBYQUERY, definebyqueryMode); 69 MODECASE(MAGICDSTOOL_MODE_DEFINERUN, definerunMode);70 67 MODECASE(MAGICDSTOOL_MODE_UPDATERUN, updaterunMode); 71 68 MODECASE(MAGICDSTOOL_MODE_TODESTREAK, todestreakMode); … … 110 107 PXOPT_LOOKUP_BOOL(noreplace, config->args, "-noreplace", false); 111 108 PXOPT_LOOKUP_STR(set_label, config->args, "-set_label", false, false); 109 PXOPT_LOOKUP_STR(set_data_group, config->args, "-set_data_group", false, false); 110 PXOPT_LOOKUP_STR(note, config->args, "-set_note", false, false); 112 111 PXOPT_LOOKUP_BOOL(rerun, config->args, "-rerun", false); 113 112 PXOPT_LOOKUP_BOOL(dry_run, config->args, "-dry_run", false); … … 248 247 psS64 cam_id = psMetadataLookupS64(NULL, row, "cam_id"); 249 248 psString magicRunLabel = psMetadataLookupStr(NULL, row, "label"); 249 psString magicRunDataGroup = psMetadataLookupStr(NULL, row, "data_group"); 250 250 psString magicRunWorkdir = psMetadataLookupStr(NULL, row, "workdir"); 251 251 … … 269 269 cam_id, 270 270 set_label ? set_label : magicRunLabel, 271 set_data_group ? set_data_group : magicRunDataGroup, 271 272 outroot, 272 273 recoveryroot, 273 274 noreplace ? 0 :1, // re_place 274 0); // remove 275 0, // remove 276 0, // fault 277 note); // remove 275 278 276 279 psFree(outroot); … … 315 318 } 316 319 317 static psS64 definerunMode(pxConfig *config)318 {319 PS_ASSERT_PTR_NON_NULL(config, false);320 321 // required322 PXOPT_LOOKUP_S64(magic_id, config->args, "-magic_id", true, false);323 PXOPT_LOOKUP_STR(stage, config->args, "-stage", true, false);324 PXOPT_LOOKUP_STR(outroot, config->args, "-outroot", true, false);325 326 // optional327 PXOPT_LOOKUP_STR(recoveryroot, config->args, "-recoveryroot", false, false);328 PXOPT_LOOKUP_BOOL(re_place, config->args, "-replace", false);329 PXOPT_LOOKUP_BOOL(remove, config->args, "-remove", false);330 PXOPT_LOOKUP_BOOL(simple, config->args, "-simple", false);331 PXOPT_LOOKUP_STR(label, config->args, "-label", false, false);332 333 psS64 stage_id = 0, cam_id = 0;334 335 if (!magicDSGetIDs(config, stage, magic_id, &stage_id, &cam_id)) {336 psError(PS_ERR_UNKNOWN, false, "failed to get ids");337 return false;338 }339 340 magicDSRunRow *run = magicDSRunRowAlloc(341 0, // ID342 magic_id,343 0, // inv_magic_id344 "new", // state345 stage,346 stage_id,347 cam_id,348 label,349 outroot,350 recoveryroot,351 re_place,352 remove353 );354 355 if (!run) {356 psError(PS_ERR_UNKNOWN, false, "failed to alloc magicRun object");357 return false;358 }359 if (!magicDSRunInsertObject(config->dbh, run)) {360 psError(PS_ERR_UNKNOWN, false, "database error");361 psFree(run);362 return false;363 }364 365 psS64 magic_ds_id = psDBLastInsertID(config->dbh);366 run->magic_ds_id = magic_ds_id;367 368 if (!magicDSRunPrintObject(stdout, run, !simple)) {369 psError(PS_ERR_UNKNOWN, false, "failed to print object");370 psFree(run);371 return false;372 }373 374 psFree(run);375 376 return magic_id;377 }378 379 320 380 321 static bool updaterunMode(pxConfig *config) … … 696 637 } 697 638 698 static bool magicDSGetIDs(pxConfig *config, psString stage, psS64 magic_id, psS64 *stage_id, psS64 *cam_id)699 {700 PS_ASSERT_PTR_NON_NULL(config, false);701 PS_ASSERT_PTR_NON_NULL(stage, false);702 PS_ASSERT_PTR_NON_NULL(stage_id, false);703 PS_ASSERT_PTR_NON_NULL(cam_id, false);704 705 int stageNum = ippStringToStage(stage);;706 if (stageNum == IPP_STAGE_NONE) {707 psError(PXTOOLS_ERR_DATA, false, "%s is not a valid value for stage", stage);708 return false;709 }710 711 psString query = pxDataGet("magicdstool_getrunids.sql");712 if (!query) {713 psError(PXTOOLS_ERR_DATA, false, "failed to retreive SQL statement");714 return false;715 }716 717 if (!p_psDBRunQueryF(config->dbh, query, magic_id)) {718 psError(PS_ERR_UNKNOWN, false, "database error");719 psFree(query);720 return false;721 }722 psFree(query);723 724 psArray *output = p_psDBFetchResult(config->dbh);725 if (!output) {726 psError(PS_ERR_UNKNOWN, false, "database error");727 return false;728 }729 if (!psArrayLength(output)) {730 psTrace("magicdstool", PS_LOG_INFO, "no rows found");731 psFree(output);732 return true;733 }734 if (psArrayLength(output) > 1) {735 psError(PS_ERR_UNKNOWN, true, "unexpected number of rows found %ld for magic_id %" PRId64,736 psArrayLength(output), magic_id);737 return false;738 }739 psMetadata *row = output->data[0];740 741 *cam_id = psMetadataLookupS64(NULL, row, "cam_id");742 switch (stageNum) {743 case IPP_STAGE_RAW:744 *stage_id = psMetadataLookupS64(NULL, row, "exp_id");745 break;746 case IPP_STAGE_CHIP:747 *stage_id = psMetadataLookupS64(NULL, row, "chip_id");748 break;749 case IPP_STAGE_CAMERA:750 *stage_id = *cam_id;751 return true;752 case IPP_STAGE_WARP:753 *stage_id = psMetadataLookupS64(NULL, row, "warp_id");754 break;755 case IPP_STAGE_DIFF:756 *stage_id = psMetadataLookupS64(NULL, row, "diff_id");757 break;758 }759 760 return true;761 }762 639 763 640 static bool advancerunMode(pxConfig *config) -
trunk/ippTools/src/magicdstool.h
r25822 r25835 26 26 MAGICDSTOOL_MODE_NONE = 0x0, 27 27 MAGICDSTOOL_MODE_DEFINEBYQUERY, 28 MAGICDSTOOL_MODE_DEFINERUN,29 28 MAGICDSTOOL_MODE_UPDATERUN, 30 29 MAGICDSTOOL_MODE_TODESTREAK, -
trunk/ippTools/src/magicdstoolConfig.c
r25822 r25835 68 68 psMetadataAddBool(definebyqueryArgs, PS_LIST_TAIL, "-simple", 0, "use the simple output format", false); 69 69 psMetadataAddU64(definebyqueryArgs, PS_LIST_TAIL, "-limit", 0, "limit result set to N items", 0); 70 71 // -definerun72 psMetadata *definerunArgs = psMetadataAlloc();73 psMetadataAddS64(definerunArgs, PS_LIST_TAIL, "-magic_id", 0, "define magic_id (required)", 0);74 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-stage", 0, "define stage for run (required)", NULL);75 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-outroot", 0, "define output directory (required)", NULL);76 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-recoveryroot", 0, "define recovery directory", NULL);77 psMetadataAddBool(definerunArgs, PS_LIST_TAIL, "-noreplace", 0, "do not replace the input wit with the destreaked versions", false);78 // psMetadataAddBool(definerunArgs, PS_LIST_TAIL, "-remove", 0, "use the simple output format", false);79 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-label", 0, "define label", NULL);80 psMetadataAddBool(definerunArgs, PS_LIST_TAIL, "-simple", 0, "use the simple output format", false);81 70 82 71 // -updaterun … … 172 161 PXOPT_ADD_MODE("-definebyquery", "create magic de-streak runs from magic runs", 173 162 MAGICDSTOOL_MODE_DEFINEBYQUERY, definebyqueryArgs); 174 PXOPT_ADD_MODE("-definerun", "create one magic de-streak run for one magic run",175 MAGICDSTOOL_MODE_DEFINERUN, definerunArgs);176 163 PXOPT_ADD_MODE("-updaterun", "update state of magic de-streak run", 177 164 MAGICDSTOOL_MODE_UPDATERUN, updaterunArgs); -
trunk/ippTools/src/magictool.c
r25772 r25835 117 117 // Optional 118 118 PXOPT_LOOKUP_STR(label, config->args, "-label", false, false); 119 PXOPT_LOOKUP_STR(data_group, config->args, "-data_group", false, false); 120 PXOPT_LOOKUP_STR(note, config->args, "-note", false, false); 119 121 PXOPT_LOOKUP_STR(dvodb, config->args, "-dvodb", false, false); 120 122 PXOPT_LOOKUP_TIME(registered, config->args, "-registered", false, false); … … 236 238 237 239 // create a new magicRun for this group 238 magicRunRow *run = magicRunRowAlloc(0, exp_id, diff_id, inverse, "new", workdir, "dirty", label, 239 dvodb, registered, 0); 240 magicRunRow *run = magicRunRowAlloc(0, 241 exp_id, 242 diff_id, 243 inverse, 244 "new", // state 245 workdir, 246 "dirty", // workdir_state 247 label, 248 data_group, 249 dvodb, 250 registered, 251 0, // fault 252 note); 240 253 if (!run) { 241 254 psAbort("failed to alloc magicRun object"); … … 331 344 "dirty", // workdir_state 332 345 label, 346 NULL, // data_group 333 347 dvodb, 334 348 registered, 335 0 349 0, // fault 350 NULL 336 351 ); 337 352 -
trunk/ippTools/src/pxadd.c
r25816 r25835 127 127 char *reduction, 128 128 char *label, 129 char *data_group, 129 130 char *dvodb, 131 char *note, 130 132 bool image_only) 131 133 { … … 152 154 reduction? reduction : "NULL", 153 155 label ? label : "NULL", 156 data_group ? data_group : "NULL", 154 157 dvodb ? dvodb : "NULL", 158 note ? note : "NULL", 155 159 image_only, 156 160 (long long) cam_id -
trunk/ippTools/src/pxadd.h
r25816 r25835 35 35 char *reduction, 36 36 char *label, 37 char *data_group, 37 38 char *dvodb, 39 char *note, 38 40 bool image_only); 39 41 -
trunk/ippTools/src/pxcam.c
r24866 r25835 141 141 } 142 142 143 144 bool pxcamRunSetStateByQuery(pxConfig *config, psMetadata *where, const char *state)145 {146 PS_ASSERT_PTR_NON_NULL(config, false);147 PS_ASSERT_PTR_NON_NULL(state, false);148 149 // check that state is a valid string value150 if (!pxIsValidState(state)) {151 psError(PS_ERR_UNKNOWN, false,152 "invalid chipRun state: %s", state);153 return false;154 }155 156 psString query = psStringCopy("UPDATE camRun JOIN chipRun USING(chip_id) JOIN rawExp USING(exp_id) SET camRun.state = '%s'");157 158 if (where) {159 psString whereClause = psDBGenerateWhereSQL(where, NULL);160 psStringAppend(&query, " %s", whereClause);161 psFree(whereClause);162 }163 164 if (!p_psDBRunQueryF(config->dbh, query, state)) {165 psFree(query);166 psError(PS_ERR_UNKNOWN, false, "database error");167 return false;168 }169 170 psFree(query);171 172 return true;173 }174 175 176 bool pxcamRunSetLabel(pxConfig *config, psS64 cam_id, const char *label)177 {178 PS_ASSERT_PTR_NON_NULL(config, false);179 // note label == NULL should be explicitly allowed180 181 char *query = "UPDATE camRun SET camRun.label = '%s' WHERE cam_id = %" PRId64;182 if (!p_psDBRunQueryF(config->dbh, query, label, cam_id)) {183 psError(PS_ERR_UNKNOWN, false,184 "failed to change state for cam_id %" PRId64, cam_id);185 return false;186 }187 188 return true;189 }190 191 bool pxcamRunSetLabelByQuery(pxConfig *config, psMetadata *where, const char *label)192 {193 PS_ASSERT_PTR_NON_NULL(config, false);194 // note label == NULL should be explicitly allowed195 196 psString query = psStringCopy("UPDATE camRun JOIN chipRun USING(chip_id) JOIN rawExp USING(exp_id) SET camRun.label = '%s'");197 198 if (where) {199 psString whereClause = psDBGenerateWhereSQL(where, NULL);200 psStringAppend(&query, " %s", whereClause);201 psFree(whereClause);202 }203 204 if (!p_psDBRunQueryF(config->dbh, query, label)) {205 psFree(query);206 psError(PS_ERR_UNKNOWN, false, "database error");207 return false;208 }209 210 psFree(query);211 212 return true;213 }214 215 216 143 bool pxcamQueueByChipID(pxConfig *config, 217 144 psS64 chip_id, 218 145 char *workdir, 219 146 char *label, 147 char *data_group, 148 char *dist_group, 220 149 char *recipe, 221 150 char *expgroup, 222 151 char *dvodb, 223 152 char *tess_id, 224 char *end_stage) 153 char *end_stage, 154 char *note) 225 155 { 226 156 PS_ASSERT_PTR_NON_NULL(config, false); … … 245 175 "dirty", //workdir_state 246 176 label ? label : "NULL", 177 data_group ? data_group : "NULL", 178 dist_group ? dist_group : "NULL", 247 179 recipe ? recipe : "NULL", 248 180 expgroup ? expgroup : "NULL", … … 250 182 tess_id ? tess_id : "NULL", 251 183 end_stage ? end_stage : "NULL", 184 note ? note : "NULL", 252 185 (long long)chip_id 253 186 )) { -
trunk/ippTools/src/pxcam.h
r24681 r25835 26 26 27 27 bool pxcamRunSetState(pxConfig *config, psS64 cam_id, const char *state, psS64 magicked); 28 bool pxcamRunSetStateByQuery(pxConfig *config, psMetadata *where, const char *state);29 bool pxcamRunSetLabel(pxConfig *config, psS64 cam_id, const char *label);30 bool pxcamRunSetLabelByQuery(pxConfig *config, psMetadata *where, const char *label);31 32 28 bool pxcamSetSearchArgs (psMetadata *md); 33 29 bool pxcamGetSearchArgs (pxConfig *config, psMetadata *where); … … 37 33 char *workdir, 38 34 char *label, 35 char *data_group, 36 char *dist_group, 39 37 char *recipe, 40 38 char *expgroup, 41 39 char *dvodb, 42 40 char *tess_id, 43 char *end_stage); 41 char *end_stage, 42 char *note); 44 43 45 44 #endif // PXCAM_H -
trunk/ippTools/src/pxchip.c
r25800 r25835 192 192 } 193 193 194 bool pxchipRunSetLabel(pxConfig *config, psS64 chip_id, const char *label)195 {196 PS_ASSERT_PTR_NON_NULL(config, false);197 // note label == NULL should be explicitly allowed198 199 char *query = "UPDATE chipRun SET label = '%s' WHERE chip_id = %" PRId64;200 if (!p_psDBRunQueryF(config->dbh, query, label, chip_id)) {201 psError(PS_ERR_UNKNOWN, false,202 "failed to change state for chip_id %" PRId64, chip_id);203 return false;204 }205 206 return true;207 }208 209 210 bool pxchipRunSetLabelByQuery(pxConfig *config, psMetadata *where, const char *label)211 {212 PS_ASSERT_PTR_NON_NULL(config, false);213 // note label == NULL should be explicitly allowed214 215 psString query = psStringCopy("UPDATE chipRun JOIN rawExp USING(exp_id) SET label = '%s'");216 217 if (where && psListLength(where->list) > 0) {218 psString whereClause = psDBGenerateWhereSQL(where, NULL);219 psStringAppend(&query, " %s", whereClause);220 psFree(whereClause);221 }222 223 if (!p_psDBRunQueryF(config->dbh, query, label)) {224 psFree(query);225 psError(PS_ERR_UNKNOWN, false, "database error");226 return false;227 }228 229 psFree(query);230 231 return true;232 }233 234 194 bool pxchipProcessedImfileSetStateByQuery(pxConfig *config, psMetadata *where, const char *state) 235 195 { … … 276 236 const char *workdir, 277 237 const char *label, 238 const char *data_group, 239 const char *dist_group, 278 240 const char *reduction, 279 241 const char *expgroup, 280 242 const char *dvodb, 281 243 const char *tess_id, 282 const char *end_stage) 244 const char *end_stage, 245 const char *note) 283 246 { 284 247 PS_ASSERT_PTR_NON_NULL(config, false); … … 298 261 "dirty", // workdir_state 299 262 label, 263 data_group, 264 dist_group, 300 265 reduction, 301 266 expgroup, … … 303 268 tess_id, 304 269 end_stage, 305 0 // magicked 270 0, // magicked 271 note 306 272 ) 307 273 ) { -
trunk/ippTools/src/pxchip.h
r25800 r25835 28 28 29 29 bool pxchipRunSetState(pxConfig *config, psS64 chip_id, const char *state, const bool magicked); 30 bool pxchipRunSetStateByQuery(pxConfig *config, psMetadata *where, const char *state);31 bool pxchipRunSetLabel(pxConfig *config, psS64 chip_id, const char *label);32 bool pxchipRunSetLabelByQuery(pxConfig *config, psMetadata *where, const char *label);33 34 30 bool pxchipProcessedImfileSetStateByQuery(pxConfig *config, psMetadata *where, const char *state); 35 31 … … 38 34 const char *workdir, 39 35 const char *label, 36 const char *data_group, 37 const char *dist_group, 40 38 const char *reduction, 41 39 const char *expgroup, 42 40 const char *dvodb, 43 41 const char *tess_id, 44 const char *end_stage); 42 const char *end_stage, 43 const char *note); 45 44 46 45 -
trunk/ippTools/src/pxfake.c
r21402 r25835 51 51 } 52 52 53 54 bool pxfakeRunSetStateByQuery(pxConfig *config, psMetadata *where, const char *state)55 {56 PS_ASSERT_PTR_NON_NULL(config, false);57 PS_ASSERT_PTR_NON_NULL(state, false);58 59 // check that state is a valid string value60 if (!pxIsValidState(state)) {61 psError(PS_ERR_UNKNOWN, false,62 "invalid fakeRun state: %s", state);63 return false;64 }65 66 psString query = psStringCopy("UPDATE fakeRun JOIN camRun USING(cam_id) JOIN chipRun USING(chip_id) JOIN rawExp USING(exp_id) SET fakeRun.state = '%s'");67 68 if (where) {69 psString whereClause = psDBGenerateWhereSQL(where, NULL);70 psStringAppend(&query, " %s", whereClause);71 psFree(whereClause);72 }73 74 if (!p_psDBRunQueryF(config->dbh, query, state)) {75 psFree(query);76 psError(PS_ERR_UNKNOWN, false, "database error");77 return false;78 }79 80 psFree(query);81 82 return true;83 }84 85 86 bool pxfakeRunSetLabel(pxConfig *config, psS64 fake_id, const char *label)87 {88 PS_ASSERT_PTR_NON_NULL(config, false);89 // note label == NULL should be explicitly allowed90 91 char *query = "UPDATE fakeRun SET fakeRun.label = '%s' WHERE fake_id = %" PRId64;92 if (!p_psDBRunQueryF(config->dbh, query, label, fake_id)) {93 psError(PS_ERR_UNKNOWN, false,94 "failed to change state for fake_id %" PRId64, fake_id);95 return false;96 }97 98 return true;99 }100 101 102 bool pxfakeRunSetLabelByQuery(pxConfig *config, psMetadata *where, const char *label)103 {104 PS_ASSERT_PTR_NON_NULL(config, false);105 // note label == NULL should be explicitly allowed106 107 psString query = psStringCopy("UPDATE fakeRun JOIN camRun USING(cam_id) JOIN chipRun USING(chip_id) JOIN rawExp USING(exp_id) SET fakeRun.label = '%s'");108 109 if (where) {110 psString whereClause = psDBGenerateWhereSQL(where, NULL);111 psStringAppend(&query, " %s", whereClause);112 psFree(whereClause);113 }114 115 if (!p_psDBRunQueryF(config->dbh, query, label)) {116 psFree(query);117 psError(PS_ERR_UNKNOWN, false, "database error");118 return false;119 }120 121 psFree(query);122 123 return true;124 }125 126 127 53 psS64 pxfakeQueueByCamID(pxConfig *config, 128 54 psS64 cam_id, 129 55 char *workdir, 130 56 char *label, 57 char *data_group, 58 char *dist_group, 131 59 char *reduction, 132 60 char *expgroup, 133 61 char *dvodb, 134 62 char *tess_id, 135 char *end_stage) 63 char *end_stage, 64 char *note) 136 65 { 137 66 PS_ASSERT_PTR_NON_NULL(config, false); … … 157 86 workdir ? workdir : "NULL", 158 87 label ? label : "NULL", 88 data_group ? data_group : "NULL", 89 dist_group ? dist_group : "NULL", 159 90 reduction? reduction: "NULL", 160 91 expgroup ? expgroup : "NULL", … … 162 93 tess_id ? tess_id : "NULL", 163 94 end_stage ? end_stage : "NULL", 95 note ? note : "NULL", 164 96 (long long)cam_id 165 97 )) { -
trunk/ippTools/src/pxfake.h
r17938 r25835 26 26 27 27 bool pxfakeRunSetState(pxConfig *config, psS64 fake_id, const char *state); 28 bool pxfakeRunSetStateByQuery(pxConfig *config, psMetadata *where, const char *state);29 bool pxfakeRunSetLabel(pxConfig *config, psS64 fake_id, const char *label);30 bool pxfakeRunSetLabelByQuery(pxConfig *config, psMetadata *where, const char *label);31 32 28 33 29 psS64 pxfakeQueueByCamID(pxConfig *config, … … 35 31 char *workdir, 36 32 char *label, 33 char *data_group, 34 char *dist_group, 37 35 char *reduction, 38 36 char *expgroup, 39 37 char *dvodb, 40 38 char *tess_id, 41 char *end_stage); 39 char *end_stage, 40 char *note); 42 41 43 42 -
trunk/ippTools/src/pxtools.c
r25324 r25835 108 108 return true; 109 109 } 110 111 // shared code for updating the various strings for a Run 112 bool pxUpdateRun(pxConfig *config, psMetadata *where, psString *pQuery, bool has_dist_group) 113 { 114 PS_ASSERT_PTR_NON_NULL(config, false); 115 PS_ASSERT_PTR_NON_NULL(where, false); 116 PS_ASSERT_PTR_NON_NULL(pQuery, false); 117 PS_ASSERT_PTR_NON_NULL(*pQuery, false); 118 119 // make sure that -state is not the only selection parameter 120 PXOPT_LOOKUP_STR(where_state, config->args, "-state", false, false); 121 if (where_state && (psListLength(where->list) < 2)) { 122 psError(PXTOOLS_ERR_DATA, true, "selection by -state alone is not allowed"); 123 return false; 124 } 125 126 PXOPT_LOOKUP_STR(state, config->args, "-set_state", false, false); 127 PXOPT_LOOKUP_STR(label, config->args, "-set_label", false, false); 128 PXOPT_LOOKUP_STR(data_group, config->args, "-set_data_group", false, false); 129 PXOPT_LOOKUP_STR(note, config->args, "-set_note", false, false); 130 131 psString dist_group = NULL; 132 if (has_dist_group) { 133 PXOPT_LOOKUP_STR(tmp_dist_group, config->args, "-set_dist_group", false, false); 134 dist_group = tmp_dist_group; 135 } 136 137 if ((!state) && (!label) && (!data_group) && (has_dist_group && !dist_group) && !(note)) { 138 psError(PXTOOLS_ERR_DATA, false, "parameters are required"); 139 return false; 140 } 141 142 if (state && ! pxIsValidState(state)) { 143 psError(PXTOOLS_ERR_DATA, false, "pxIsValidState failed"); 144 return false; 145 } 146 147 // first paramter is added with "SET param = 'value'" 148 // subseqent ones with ", param = 'value'" 149 char *separator = " SET "; 150 char *comma = ","; 151 152 # define addColumn(_val) \ 153 do { \ 154 if (_val) { \ 155 psStringAppend(pQuery, "%s %s = '%s'", separator, #_val, _val); \ 156 separator = comma; \ 157 } \ 158 } while (0) 159 160 addColumn(state); 161 addColumn(data_group); 162 if (has_dist_group) { 163 addColumn(dist_group); 164 } 165 addColumn(note); 166 addColumn(label); 167 168 psString whereClause = psDBGenerateWhereSQL(where, NULL); 169 psStringAppend(pQuery, " %s", whereClause); 170 psFree(whereClause); 171 172 if (!p_psDBRunQuery(config->dbh, *pQuery)) { 173 psError(PS_ERR_UNKNOWN, false, "database error"); 174 return false; 175 } 176 177 return true; 178 } -
trunk/ippTools/src/pxtools.h
r25774 r25835 63 63 bool pxGetOptions(FILE *stream, int argc, char **argv, pxConfig *config, psMetadata *modes, psMetadata *argSets); 64 64 65 bool pxUpdateRun(pxConfig *config, psMetadata *where, psString *pQuery, bool has_dist_group); 66 65 67 #define PXOPT_ADD_MODE(option, comment, modeval, argset) \ 66 68 { \ -
trunk/ippTools/src/pxwarp.c
r24487 r25835 29 29 #include "pxwarp.h" 30 30 31 bool pxwarpRunSetState(pxConfig *config, psS64 warp_id, const char *state)32 {33 PS_ASSERT_PTR_NON_NULL(config, false);34 PS_ASSERT_PTR_NON_NULL(state, false);35 36 // check that state is a valid string value37 if (!pxIsValidState(state)) {38 psError(PS_ERR_UNKNOWN, false, "invalid warpRun state: %s", state);39 return false;40 }41 42 char *query = "UPDATE warpRun SET state = '%s' WHERE warp_id = %" PRId64;43 if (!p_psDBRunQueryF(config->dbh, query, state, warp_id)) {44 psError(PS_ERR_UNKNOWN, false,45 "failed to change state for warp_id %" PRId64, warp_id);46 return false;47 }48 49 return true;50 }51 52 53 bool pxwarpRunSetStateByQuery(pxConfig *config, psMetadata *where, const char *state)54 {55 PS_ASSERT_PTR_NON_NULL(config, false);56 PS_ASSERT_PTR_NON_NULL(state, false);57 58 // check that state is a valid string value59 if (!pxIsValidState(state)) {60 psError(PS_ERR_UNKNOWN, false, "invalid warpRun state: %s", state);61 return false;62 }63 64 psString query = psStringCopy("UPDATE warpRun JOIN fakeRun USING(fake_id) JOIN camRun USING(cam_id) JOIN chipRun USING(chip_id) JOIN rawExp USING(exp_id) SET warpRun.state = '%s'");65 66 if (where) {67 psString whereClause = psDBGenerateWhereSQL(where, NULL);68 if (whereClause && strlen(whereClause) > 0) {69 psStringAppend(&query, " %s", whereClause);70 }71 psFree(whereClause);72 }73 74 if (!p_psDBRunQueryF(config->dbh, query, state)) {75 psFree(query);76 psError(PS_ERR_UNKNOWN, false, "database error");77 return false;78 }79 80 psFree(query);81 82 return true;83 }84 85 86 bool pxwarpRunSetLabel(pxConfig *config, psS64 warp_id, const char *label)87 {88 PS_ASSERT_PTR_NON_NULL(config, false);89 // note label == NULL should be explicitly allowed90 91 char *query = "UPDATE warpRun SET warpRun.label = '%s' WHERE warp_id = %" PRId64;92 if (!p_psDBRunQueryF(config->dbh, query, label, warp_id)) {93 psError(PS_ERR_UNKNOWN, false,94 "failed to change label for warp_id %" PRId64, warp_id);95 return false;96 }97 98 return true;99 }100 101 102 bool pxwarpRunSetLabelByQuery(pxConfig *config, psMetadata *where, const char *label)103 {104 PS_ASSERT_PTR_NON_NULL(config, false);105 // note label == NULL should be explicitly allowed106 107 psString query = psStringCopy("UPDATE warpRun JOIN fakeRun USING(fake_id) JOIN camRun USING(cam_id) JOIN chipRun USING(chip_id) JOIN rawExp USING(exp_id) SET warpRun.label = '%s'");108 109 if (where) {110 psString whereClause = psDBGenerateWhereSQL(where, NULL);111 psStringAppend(&query, " %s", whereClause);112 psFree(whereClause);113 }114 115 if (!p_psDBRunQueryF(config->dbh, query, label)) {116 psFree(query);117 psError(PS_ERR_UNKNOWN, false, "database error");118 return false;119 }120 121 psFree(query);122 123 return true;124 }125 126 127 31 bool pxwarpQueueByFakeID(pxConfig *config, 128 32 psS64 fake_id, 129 33 const char *workdir, 130 34 const char *label, 35 const char *data_group, 36 const char *dist_group, 131 37 const char *dvodb, 132 38 const char *tess_id, 133 39 const char *reduction, 134 const char *end_stage) 40 const char *end_stage, 41 const char *note) 135 42 { 136 43 PS_ASSERT_PTR_NON_NULL(config, false); … … 145 52 "dirty", // workdir_state 146 53 label, 54 data_group, 55 dist_group, 147 56 dvodb, 148 57 tess_id, 149 reduction,58 reduction, 150 59 end_stage, 151 60 NULL, // registered 152 0 // magicked zero when created will get updated when warpRun goes to 'full' 61 0, // magicked set to zero when created may get updated when warpRun goes to 'full' 62 NULL // note 153 63 )) { 154 64 psError(PS_ERR_UNKNOWN, false, "database error"); -
trunk/ippTools/src/pxwarp.h
r24487 r25835 25 25 #include "pxtools.h" 26 26 27 bool pxwarpRunSetState(pxConfig *config, psS64 warp_id, const char *state);28 bool pxwarpRunSetStateByQuery(pxConfig *config, psMetadata *where, const char *state);29 bool pxwarpRunSetLabel(pxConfig *config, psS64 warp_id, const char *label);30 bool pxwarpRunSetLabelByQuery(pxConfig *config, psMetadata *where, const char *label);31 32 27 bool pxwarpQueueByFakeID(pxConfig *config, 33 28 psS64 fake_id, 34 29 const char *workdir, 35 30 const char *label, 31 const char *data_group, 32 const char *dist_group, 36 33 const char *dvodb, 37 34 const char *tess_id, 38 35 const char *reduction, 39 const char *end_stage); 36 const char *end_stage, 37 const char *note); 40 38 41 39 #endif // PXWARP_H -
trunk/ippTools/src/regtool.c
r25778 r25835 885 885 workdir, 886 886 label, 887 NULL, // data_group 888 NULL, // dist_group 887 889 reduction, 888 NULL, // expgroup890 NULL, // expgroup 889 891 dvodb, 890 892 tess_id, 891 end_stage 893 end_stage, 894 NULL // note 892 895 )) { 893 896 // rollback -
trunk/ippTools/src/stacktool.c
r25800 r25835 48 48 49 49 static bool setstackRunState(pxConfig *config, psS64 stack_id, const char *state); 50 static bool setstackRunStateByLabel(pxConfig *config, const char *label, const char *state);51 50 52 51 # define MODECASE(caseName, func) \ … … 110 109 111 110 // required options 112 PXOPT_LOOKUP_STR(workdir, config->args, "-workdir", true, false); 113 PXOPT_LOOKUP_STR(label, config->args, "-label", false, false); 114 PXOPT_LOOKUP_STR(reduction, config->args, "-reduction", false, false); 115 PXOPT_LOOKUP_STR(dvodb, config->args, "-dvodb", false, false); 111 PXOPT_LOOKUP_STR(workdir, config->args, "-set_workdir", true, false); 112 113 // optional 114 PXOPT_LOOKUP_STR(label, config->args, "-set_label", false, false); 115 PXOPT_LOOKUP_STR(data_group, config->args, "-set_data_group", false, false); 116 PXOPT_LOOKUP_STR(dist_group, config->args, "-set_dist_group", false, false); 117 PXOPT_LOOKUP_STR(reduction, config->args, "-set_reduction", false, false); 118 PXOPT_LOOKUP_STR(dvodb, config->args, "-set_dvodb", false, false); 119 PXOPT_LOOKUP_STR(note, config->args, "-set_note", false, false); 120 PXOPT_LOOKUP_TIME(registered, config->args, "-set_registered", false, false); 116 121 117 122 psMetadata *where = psMetadataAlloc(); … … 161 166 PXOPT_LOOKUP_BOOL(simple, config->args, "-simple", false); 162 167 PXOPT_LOOKUP_BOOL(pretend, config->args, "-pretend", false); 163 PXOPT_LOOKUP_TIME(registered, config->args, "-registered", false, false); 164 165 if (!psListLength(where->list) && 166 !psMetadataLookupBool(NULL, config->args, "-all")) { 168 169 if (!psListLength(where->list)) { 167 170 psFree(where); 168 171 psError(PXTOOLS_ERR_DATA, false, "search parameters are required"); … … 346 349 workdir, 347 350 label, 351 data_group ? data_group : label, 352 dist_group, 348 353 reduction, 349 354 dvodb, … … 351 356 skycell_id, 352 357 tess_id, 353 filter); 358 filter, 359 note); 354 360 355 361 if (!stackRunInsertObject(config->dbh, run)) { … … 469 475 470 476 // required options 471 PXOPT_LOOKUP_STR(workdir, config->args, "- workdir", true, false);477 PXOPT_LOOKUP_STR(workdir, config->args, "-set_workdir", true, false); 472 478 PXOPT_LOOKUP_STR(skycell_id, config->args, "-skycell_id", true, false); 473 479 PXOPT_LOOKUP_STR(tess_id, config->args, "-tess_id", true, false); … … 476 482 // default 477 483 PXOPT_LOOKUP_BOOL(simple, config->args, "-simple", false); 478 PXOPT_LOOKUP_TIME(registered, config->args, "- registered", false, false);484 PXOPT_LOOKUP_TIME(registered, config->args, "-set_registered", false, false); 479 485 480 486 // options 481 PXOPT_LOOKUP_STR(label, config->args, "-label", false, false); 482 PXOPT_LOOKUP_STR(reduction, config->args, "-reduction", false, false); 483 PXOPT_LOOKUP_STR(dvodb, config->args, "-dvodb", false, false); 487 PXOPT_LOOKUP_STR(label, config->args, "-set_label", false, false); 488 PXOPT_LOOKUP_STR(data_group, config->args, "-set_data_group", false, false); 489 PXOPT_LOOKUP_STR(dist_group, config->args, "-set_dist_group", false, false); 490 PXOPT_LOOKUP_STR(note, config->args, "-set_note", false, false); 491 PXOPT_LOOKUP_STR(reduction, config->args, "-set_reduction", false, false); 492 PXOPT_LOOKUP_STR(dvodb, config->args, "-set_dvodb", false, false); 484 493 485 494 // we have to support multipe exp_ids … … 496 505 workdir, 497 506 label, 507 data_group ? data_group : label, 508 dist_group, 498 509 reduction, 499 510 dvodb, … … 501 512 skycell_id, 502 513 tess_id, 503 filter); 514 filter, 515 note); 504 516 505 517 if (!run) { … … 570 582 PS_ASSERT_PTR_NON_NULL(config, false); 571 583 584 #ifdef notdef 572 585 PXOPT_LOOKUP_S64(stack_id, config->args, "-stack_id", false, false); 573 586 PXOPT_LOOKUP_STR(state, config->args, "-state", true, false); 574 587 PXOPT_LOOKUP_STR(label, config->args, "-label", false, false); 575 588 #endif 589 psMetadata *where = psMetadataAlloc(); 590 PXOPT_COPY_S64(config->args, where, "-stack_id", "stack_id", "=="); 591 PXOPT_COPY_STR(config->args, where, "-label", "label", "=="); 592 PXOPT_COPY_STR(config->args, where, "-state", "state", "=="); 593 if (!psListLength(where->list)) { 594 psFree(where); 595 psError(PXTOOLS_ERR_DATA, false, "search parameters are required"); 596 return false; 597 } 598 599 psString query = psStringCopy("UPDATE stackRun"); 600 601 // pxUpdateRun gets parameters from config->args and updates 602 bool result = pxUpdateRun(config, where, &query, true); 603 604 psFree(query); 605 psFree(where); 606 607 return result; 608 609 #ifdef notdef 576 610 // Hack-y work around to make stacktool more like the other tools, without breaking other stuff (hopefully). 577 611 … … 587 621 psError(PS_ERR_UNKNOWN, false, "Required options not found."); 588 622 return false; 623 #endif 589 624 } 590 625 … … 1015 1050 } 1016 1051 1052 #ifdef notdef 1017 1053 static bool setstackRunStateByLabel(pxConfig *config, const char *label, const char *state) 1018 1054 { … … 1034 1070 return true; 1035 1071 } 1072 #endif 1036 1073 1037 1074 static bool pendingcleanuprunMode(pxConfig *config) -
trunk/ippTools/src/stacktoolConfig.c
r25800 r25835 47 47 // -definebyquery 48 48 psMetadata *definebyqueryArgs = psMetadataAlloc(); 49 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-workdir", 0, "define workdir (required)", NULL); 50 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-label", 0, "define label", NULL); 51 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-reduction", 0, "define reduction", NULL); 52 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-dvodb", 0, "define dvodb", NULL); 53 psMetadataAddTime(definebyqueryArgs, PS_LIST_TAIL, "-registered", 0, "time detrend run was registered", now); 49 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_workdir", 0, "define workdir (required)", NULL); 50 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_label", 0, "define label", NULL); 51 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_data_group", 0, "define data group", NULL); 52 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_dist_group", 0, "define dist group", NULL); 53 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_note", 0, "define note", NULL); 54 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_reduction", 0, "define reduction", NULL); 55 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_dvodb", 0, "define dvodb", NULL); 56 psMetadataAddTime(definebyqueryArgs, PS_LIST_TAIL, "-set_registered", 0, "time detrend run was registered", now); 54 57 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-select_skycell_id", 0, "search for skycell_id", NULL); 55 58 psMetadataAddF32(definebyqueryArgs, PS_LIST_TAIL, "-select_good_frac_min", 0, "define min good_frac", 0.0); … … 84 87 psMetadataAddF64(definebyqueryArgs, PS_LIST_TAIL, "-select_iq_m4_max", 0, "define max iq_m4", NAN); 85 88 psMetadataAddS32(definebyqueryArgs, PS_LIST_TAIL, "-random", 0, "use this number of random elements", 0); 86 psMetadataAddBool(definebyqueryArgs, PS_LIST_TAIL, "-all", 0, "allow everything to be queued without search terms", false);87 89 psMetadataAddS32(definebyqueryArgs, PS_LIST_TAIL, "-min_num", 0, "minimum number of inputs", 0); 88 90 psMetadataAddS32(definebyqueryArgs, PS_LIST_TAIL, "-min_new", 0, "minimum number of new inputs", 0); … … 93 95 // -definerun 94 96 psMetadata *definerunArgs = psMetadataAlloc(); 95 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "- workdir", 0, "define workdir (required)", NULL);96 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "- label", 0, "define label", NULL);97 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "- reduction", 0, "define reduction", NULL);98 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "- dvodb", 0, "define dvodb", NULL);99 psMetadataAddTime(definerunArgs, PS_LIST_TAIL, "- registered", 0, "time detrend run was registered", now);97 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-set_workdir", 0, "define workdir (required)", NULL); 98 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-set_label", 0, "define label", NULL); 99 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-set_reduction", 0, "define reduction", NULL); 100 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-set_dvodb", 0, "define dvodb", NULL); 101 psMetadataAddTime(definerunArgs, PS_LIST_TAIL, "-set_registered", 0, "time detrend run was registered", now); 100 102 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-skycell_id", 0, "define skycell ID (required)", NULL); 101 103 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-tess_id", 0, "define tessellation ID (required)", NULL); … … 106 108 // -updaterun 107 109 psMetadata *updaterunArgs = psMetadataAlloc(); 108 psMetadataAddS64(updaterunArgs, PS_LIST_TAIL, "-stack_id", 0, "define stack ID (required)", 0); 109 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-state", 0, "set state (required)", NULL); 110 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-label", 0, "define by label instead of stack ID", 0); 110 psMetadataAddS64(updaterunArgs, PS_LIST_TAIL, "-stack_id", 0, "search by stack ID", 0); 111 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-state", 0, "search by state", NULL); 112 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-label", 0, "search by label", 0); 113 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_label", 0, "define new value for label", 0); 114 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_state", 0, "define new state", NULL); 115 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_data_group", 0, "define new data_group", NULL); 116 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_dist_group", 0, "define new dist_group", NULL); 117 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_note", 0, "define new note", NULL); 111 118 112 119 // -addinputskyfile -
trunk/ippTools/src/warptool.c
r25822 r25835 141 141 PXOPT_LOOKUP_STR(workdir, config->args, "-workdir", true, false); // required 142 142 PXOPT_LOOKUP_STR(label, config->args, "-label", false, false); 143 PXOPT_LOOKUP_STR(data_group, config->args, "-data_group", false, false); 144 PXOPT_LOOKUP_STR(dist_group, config->args, "-dist_group", false, false); 145 PXOPT_LOOKUP_STR(note, config->args, "-note", false, false); 143 146 PXOPT_LOOKUP_STR(dvodb, config->args, "-dvodb", false, false); 144 147 PXOPT_LOOKUP_STR(tess_id, config->args, "-tess_id", true, false); // required (no default TESS) … … 162 165 "dirty", // workdir_state 163 166 label, 167 data_group ? data_group : label, 168 dist_group, 164 169 dvodb, 165 170 tess_id, … … 167 172 end_stage, 168 173 registered, 169 0 // magicked 174 0, // magicked 175 note 170 176 ); 171 177 if (!warpRun) { … … 253 259 PXOPT_LOOKUP_STR(workdir, config->args, "-set_workdir", false, false); 254 260 PXOPT_LOOKUP_STR(label, config->args, "-set_label", false, false); 261 PXOPT_LOOKUP_STR(data_group, config->args, "-set_data_group", false, false); 262 PXOPT_LOOKUP_STR(dist_group, config->args, "-set_dist_group", false, false); 255 263 PXOPT_LOOKUP_STR(dvodb, config->args, "-set_dvodb", false, false); 256 264 PXOPT_LOOKUP_STR(tess_id, config->args, "-set_tess_id", false, false); 257 265 PXOPT_LOOKUP_STR(reduction, config->args, "-set_reduction", false, false); 258 266 PXOPT_LOOKUP_STR(end_stage, config->args, "-set_end_stage", false, false); 267 PXOPT_LOOKUP_STR(note, config->args, "-set_note", false, false); 259 268 260 269 PXOPT_LOOKUP_TIME(registered, config->args, "-registered", false, false); … … 342 351 workdir ? workdir : row->workdir, 343 352 label ? label : row->label, 353 data_group ? data_group: row->data_group, 354 dist_group ? dist_group: row->dist_group, 344 355 dvodb ? dvodb : row->dvodb, 345 356 tess_id ? tess_id : row->tess_id, 346 357 reduction ? reduction : row->reduction, 347 end_stage ? end_stage : row->end_stage)) 358 end_stage ? end_stage : row->end_stage, 359 note)) 348 360 { 349 361 psError(PS_ERR_UNKNOWN, false, "failed to trying to queue fake_id: %" PRId64, row->fake_id); … … 373 385 PXOPT_COPY_STR(config->args, where, "-label", "warpRun.label", "=="); 374 386 PXOPT_COPY_STR(config->args, where, "-state", "warpRun.state", "=="); 375 376 if (!psListLength(where->list) 377 && !psMetadataLookupBool(NULL, config->args, "-all")) { 387 PXOPT_COPY_STR(config->args, where, "-data_group","warpRun.data_group", "=="); 388 PXOPT_COPY_STR(config->args, where, "-dist_group","warpRun.dist_group", "=="); 389 390 if (!psListLength(where->list)) { 378 391 psFree(where); 379 where = NULL;380 392 psError(PXTOOLS_ERR_DATA, false, "search parameters are required"); 381 393 return false; 382 394 } 383 384 PXOPT_LOOKUP_STR(state, config->args, "-set_state", false, false); 385 PXOPT_LOOKUP_STR(label, config->args, "-set_label", false, false); 386 387 if ((!state) && (!label)) { 388 psError(PXTOOLS_ERR_DATA, false, "parameters (-state or -label) are required"); 389 psFree(where); 390 return false; 391 } 392 393 if (state) { 394 // set warpRun.state to state 395 if (!pxwarpRunSetStateByQuery(config, where, state)) { 396 psFree(where); 397 return false; 398 } 399 } 400 401 if (label) { 402 // set chipRun.label to label 403 if (!pxwarpRunSetLabelByQuery(config, where, label)) { 404 psFree(where); 405 return false; 406 } 407 } 408 395 396 psString query = psStringCopy("UPDATE warpRun JOIN fakeRun USING(fake_id) JOIN camRun USING(cam_id) JOIN chipRun USING(chip_id) JOIN rawExp USING(exp_id)"); 397 398 // pxUpdateRun gets parameters from config->args and updates 399 bool result = pxUpdateRun(config, where, &query, true); 400 401 psFree(query); 409 402 psFree(where); 410 403 411 return true; 412 } 413 404 return result; 405 } 414 406 415 407 static bool expMode(pxConfig *config) -
trunk/ippTools/src/warptoolConfig.c
r25822 r25835 100 100 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_reduction", 0, "define reduction class", NULL); 101 101 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_end_stage", 0, "define end stage", NULL); 102 psMetadataAddBool(definebyqueryArgs, PS_LIST_TAIL, "-all", 0, "allow everything to be queued without search terms", false); 102 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_data_group", 0, "define data group", NULL); 103 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_dist_group", 0, "define dist group", NULL); 104 psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_note", 0, "define note", NULL); 103 105 104 106 psMetadataAddTime(definebyqueryArgs, PS_LIST_TAIL, "-registered", 0, "time detrend run was registered", now); … … 117 119 psMetadataAddTime(definerunArgs, PS_LIST_TAIL, "-registered", 0, "time detrend run was registered", now); 118 120 psMetadataAddBool(definerunArgs, PS_LIST_TAIL, "-simple", 0, "use the simple output format", false); 121 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-set_end_stage", 0, "define end stage", NULL); 122 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-set_data_group", 0, "define data group", NULL); 123 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-set_dist_group", 0, "define dist group", NULL); 124 psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-set_note", 0, "define note", NULL); 119 125 120 126 // -updaterun … … 128 134 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-state", 0, "search by warpRun state", NULL); 129 135 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-label", 0, "search by warpRun label", NULL); 130 psMetadataAddBool(updaterunArgs, PS_LIST_TAIL, "-all", 0, "allow everything to be queued without search terms", false); 131 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_state", 0, "set state", NULL); 132 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_label", 0, "set label", NULL); 133 136 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-data_group", 0, "search by warpRun data_group", NULL); 137 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-dist_group", 0, "search by warpRun dist_group", NULL); 138 139 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_state", 0, "define new state", NULL); 140 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_label", 0, "define new value for label", 0); 141 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_data_group", 0, "define new data_group", NULL); 142 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_dist_group", 0, "define new dist_group", NULL); 143 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_note", 0, "define new note", NULL); 134 144 // -exp 135 145 psMetadata *expArgs = psMetadataAlloc();
Note:
See TracChangeset
for help on using the changeset viewer.
