Changeset 26857
- Timestamp:
- Feb 10, 2010, 3:52:15 PM (16 years ago)
- Location:
- branches/eam_branches/20091201/ippTools
- Files:
-
- 62 edited
- 9 copied
-
configure.ac (modified) (2 diffs)
-
share/Makefile.am (modified) (1 diff)
-
share/camtool_find_pendingexp.sql (modified) (1 diff)
-
share/camtool_queue_chip_id.sql (modified) (1 diff)
-
share/chiptool_change_exp_state.sql (modified) (1 diff)
-
share/chiptool_completely_processed_exp.sql (modified) (2 diffs)
-
share/chiptool_revertprocessedimfile.sql (modified) (1 diff)
-
share/difftool_change_run_state.sql (modified) (1 diff)
-
share/difftool_change_skyfile_data_state.sql (modified) (1 diff)
-
share/difftool_revertdiffskyfile_delete.sql (modified) (1 diff)
-
share/difftool_todiffskyfile.sql (modified) (1 diff)
-
share/disttool_definebyquery_camera.sql (modified) (1 diff)
-
share/disttool_definebyquery_chip.sql (modified) (1 diff)
-
share/disttool_definebyquery_diff.sql (modified) (1 diff)
-
share/disttool_definebyquery_fake.sql (modified) (1 diff)
-
share/disttool_definebyquery_raw.sql (modified) (1 diff)
-
share/disttool_definebyquery_stack.sql (modified) (1 diff)
-
share/disttool_definebyquery_warp.sql (modified) (1 diff)
-
share/disttool_pending_camera.sql (modified) (1 diff)
-
share/disttool_pending_chip.sql (modified) (1 diff)
-
share/disttool_pending_diff.sql (modified) (1 diff)
-
share/disttool_pending_warp.sql (modified) (1 diff)
-
share/disttool_pendingfileset.sql (modified) (1 diff)
-
share/dqstatstool_createbundle.sql (copied) (copied from trunk/ippTools/share/dqstatstool_createbundle.sql )
-
share/dqstatstool_definebyquery.sql (copied) (copied from trunk/ippTools/share/dqstatstool_definebyquery.sql )
-
share/dqstatstool_get_contents.sql (copied) (copied from trunk/ippTools/share/dqstatstool_get_contents.sql )
-
share/dqstatstool_get_run.sql (copied) (copied from trunk/ippTools/share/dqstatstool_get_run.sql )
-
share/magicdstool_getskycells.sql (modified) (1 diff)
-
share/magictool_definebyquery_select.sql (modified) (2 diffs)
-
share/pxadmin_create_tables.sql (modified) (3 diffs)
-
share/receivetool_list.sql (modified) (1 diff)
-
share/receivetool_pendingfile.sql (modified) (1 diff)
-
share/receivetool_pendingfileset.sql (modified) (1 diff)
-
share/receivetool_toadvance.sql (modified) (1 diff)
-
share/stacktool_revertsumskyfile_delete.sql (modified) (1 diff)
-
share/warptool_change_run_state.sql (modified) (2 diffs)
-
share/warptool_change_skyfile_data_state.sql (modified) (1 diff)
-
share/warptool_finish_run.sql (modified) (1 diff)
-
share/warptool_finished_run_select.sql (modified) (1 diff)
-
share/warptool_towarped.sql (modified) (1 diff)
-
src (modified) (1 prop)
-
src/Makefile.am (modified) (5 diffs)
-
src/camtool.c (modified) (6 diffs)
-
src/chiptool.c (modified) (5 diffs)
-
src/chiptoolConfig.c (modified) (1 diff)
-
src/dettool.c (modified) (1 diff)
-
src/dettoolConfig.c (modified) (1 diff)
-
src/difftool.c (modified) (11 diffs)
-
src/difftool.h (modified) (1 diff)
-
src/difftoolConfig.c (modified) (5 diffs)
-
src/disttool.c (modified) (4 diffs)
-
src/disttoolConfig.c (modified) (1 diff)
-
src/dqstatstool.c (copied) (copied from trunk/ippTools/src/dqstatstool.c )
-
src/dqstatstool.h (copied) (copied from trunk/ippTools/src/dqstatstool.h )
-
src/dqstatstoolConfig.c (copied) (copied from trunk/ippTools/src/dqstatstoolConfig.c )
-
src/flatcorr.c (modified) (1 diff)
-
src/magicdstool.c (modified) (18 diffs)
-
src/magicdstoolConfig.c (modified) (2 diffs)
-
src/pstamptool.c (modified) (4 diffs)
-
src/pxcam.c (modified) (3 diffs)
-
src/pxcam.h (modified) (1 diff)
-
src/pxchip.c (modified) (4 diffs)
-
src/pxchip.h (modified) (1 diff)
-
src/pxdqstats.c (copied) (copied from trunk/ippTools/src/pxdqstats.c )
-
src/pxdqstats.h (copied) (copied from trunk/ippTools/src/pxdqstats.h )
-
src/pxmagic.c (modified) (1 diff)
-
src/pztool.c (modified) (2 diffs)
-
src/receivetool.c (modified) (3 diffs)
-
src/receivetoolConfig.c (modified) (1 diff)
-
src/warptool.c (modified) (3 diffs)
-
src/warptoolConfig.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/eam_branches/20091201/ippTools/configure.ac
r26194 r26857 1 1 AC_PREREQ(2.61) 2 2 3 AC_INIT([ipptools], [1.1. 57], [ipp-support@ifa.hawaii.edu])3 AC_INIT([ipptools], [1.1.63], [ipp-support@ifa.hawaii.edu]) 4 4 AC_CONFIG_SRCDIR([autogen.sh]) 5 5 … … 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. 57])20 PKG_CHECK_MODULES([IPPDB], [ippdb >= 1.1.63]) 21 21 22 22 PXTOOLS_CFLAGS="${PSLIB_CFLAGS=} ${PSMODULES_CFLAGS=} ${IPPDB_CFLAGS=}" -
branches/eam_branches/20091201/ippTools/share/Makefile.am
r26193 r26857 140 140 disttool_updateinterest.sql \ 141 141 disttool_updatercrun.sql \ 142 dqstatstool_createbundle.sql \ 143 dqstatstool_definebyquery.sql \ 144 dqstatstool_get_contents.sql \ 145 dqstatstool_get_run.sql \ 142 146 faketool_change_exp_state.sql \ 143 147 faketool_change_imfile_data_state.sql \ -
branches/eam_branches/20091201/ippTools/share/camtool_find_pendingexp.sql
r23617 r26857 9 9 rawExp.camera, 10 10 rawExp.telescope, 11 rawExp.filelevel 11 rawExp.filelevel, 12 chipRun.magicked AS chip_magicked 12 13 FROM camRun 13 14 JOIN chipRun -
branches/eam_branches/20091201/ippTools/share/camtool_queue_chip_id.sql
r25835 r26857 16 16 '%s', -- tess_id 17 17 '%s', -- end_stage 18 0,-- magicked19 '%s' -- note18 %lld, -- magicked 19 '%s' -- note 20 20 FROM chipRun 21 21 WHERE -
branches/eam_branches/20091201/ippTools/share/chiptool_change_exp_state.sql
r19702 r26857 4 4 -- the chipProcessedImfile sub query 5 5 UPDATE chipRun 6 SET state = '%s' 6 JOIN rawExp using(exp_id) 7 SET chipRun.state = '%s' 8 -- set magicked hook %s 7 9 WHERE 8 10 chipRun.chip_id = %lld -
branches/eam_branches/20091201/ippTools/share/chiptool_completely_processed_exp.sql
r25835 r26857 14 14 tess_id, 15 15 end_stage, 16 all_files_magicked as magicked,16 imfile_magicked as magicked, 17 17 note 18 18 FROM … … 21 21 rawImfile.class_id as rawimfile_class_id, 22 22 chipProcessedImfile.class_id, 23 SUM(!chipProcessedImfile.magicked) = 0 as all_files_magicked 23 -- XXX using chipProcessedImfile assumes that all imfile's have 24 -- the same magicked value if that isn't right then more than one 25 -- row will be returned. In practice this is the case but bugs could 26 -- cause it to not be true. 27 -- We could use rawExp.magicked but that would make it possible for 28 -- the chipRun to have a different magicked value than the imfiles 29 chipProcessedImfile.magicked AS imfile_magicked 24 30 FROM chipRun 25 31 JOIN rawImfile -
branches/eam_branches/20091201/ippTools/share/chiptool_revertprocessedimfile.sql
r19433 r26857 3 3 WHERE 4 4 rawExp.exp_id = chipProcessedImfile.exp_id 5 AND chipRun.state = 'new' 5 6 AND chipProcessedImfile.fault != 0 -
branches/eam_branches/20091201/ippTools/share/difftool_change_run_state.sql
r25800 r26857 5 5 UPDATE diffRun 6 6 SET state = '%s' 7 -- set magicked hook %s 7 8 WHERE 8 9 diffRun.diff_id = %lld -
branches/eam_branches/20091201/ippTools/share/difftool_change_skyfile_data_state.sql
r25800 r26857 5 5 SET 6 6 data_state = '%s' 7 -- magicked hook %s 7 8 WHERE 8 9 diff_id = %lld -
branches/eam_branches/20091201/ippTools/share/difftool_revertdiffskyfile_delete.sql
r19462 r26857 3 3 WHERE 4 4 diffRun.diff_id = diffSkyfile.diff_id 5 AND diffRun.state = 'new' 5 6 AND fault != 0 -
branches/eam_branches/20091201/ippTools/share/difftool_todiffskyfile.sql
r26750 r26857 66 66 OR (diffRun.state = 'update' 67 67 AND diffSkyfile.fault = 0 68 AND diffSkyfile. quality = 0)68 AND diffSkyfile.data_state = 'cleaned') 69 69 ) 70 70 -- Ensure input warps are available -
branches/eam_branches/20091201/ippTools/share/disttool_definebyquery_camera.sql
r26189 r26857 5 5 camRun.magicked, 6 6 camRun.label, 7 camRun.data_group, 7 8 distTarget.dist_group, 8 9 distTarget.target_id, -
branches/eam_branches/20091201/ippTools/share/disttool_definebyquery_chip.sql
r26189 r26857 5 5 rawExp.exp_name as run_tag, 6 6 chipRun.label, 7 chipRun.data_group, 7 8 chipRun.dist_group, 8 9 distTarget.target_id, -
branches/eam_branches/20091201/ippTools/share/disttool_definebyquery_diff.sql
r26188 r26857 5 5 rawExp.exp_name as run_tag, 6 6 diffRun.label, 7 diffRun.data_group, 7 8 distTarget.dist_group, 8 9 distTarget.target_id, -
branches/eam_branches/20091201/ippTools/share/disttool_definebyquery_fake.sql
r26189 r26857 5 5 rawExp.exp_name as run_tag, 6 6 fakeRun.label, 7 fakeRun.data_group, 7 8 distTarget.dist_group, 8 9 distTarget.target_id, -
branches/eam_branches/20091201/ippTools/share/disttool_definebyquery_raw.sql
r26189 r26857 5 5 rawExp.magicked, 6 6 chipRun.label, 7 chipRun.data_group, 7 8 distTarget.dist_group, 8 9 distTarget.target_id, -
branches/eam_branches/20091201/ippTools/share/disttool_definebyquery_stack.sql
r26189 r26857 6 6 CONCAT_WS('.', 'stack', stackRun.skycell_id, convert(stackRun.stack_id, CHAR)) as run_tag, 7 7 stackRun.label, 8 stackRun.data_group, 8 9 distTarget.dist_group, 9 10 distTarget.target_id, -
branches/eam_branches/20091201/ippTools/share/disttool_definebyquery_warp.sql
r26189 r26857 5 5 rawExp.exp_name as run_tag, 6 6 warpRun.label, 7 warpRun.data_group, 7 8 distTarget.dist_group, 8 9 distTarget.target_id, -
branches/eam_branches/20091201/ippTools/share/disttool_pending_camera.sql
r25838 r26857 30 30 AND distRun.stage = 'camera' 31 31 AND distComponent.dist_id IS NULL 32 AND ( distRun.clean OR (chipRun.magicked AND camRun.magicked) OR distRun.no_magic)32 AND (((chipRun.magicked > 0) AND (camRun.magicked > 0)) OR distRun.no_magic) 33 33 AND (camRun.state = 'full' OR (distRun.clean AND camRun.state = 'cleaned')) -
branches/eam_branches/20091201/ippTools/share/disttool_pending_chip.sql
r25838 r26857 28 28 AND distRun.stage = 'chip' 29 29 AND distComponent.dist_id IS NULL 30 AND ( distRun.clean OR chipRun.magickedOR distRun.no_magic)30 AND ((chipRun.magicked > 0) OR distRun.no_magic) 31 31 AND (chipRun.state = 'full' OR (distRun.clean AND chipRun.state = 'cleaned')) -
branches/eam_branches/20091201/ippTools/share/disttool_pending_diff.sql
r25838 r26857 36 36 AND distRun.stage = 'diff' 37 37 AND distComponent.dist_id IS NULL 38 AND ( distRun.clean OR diffRun.magickedOR distRun.no_magic)38 AND ((diffRun.magicked > 0) OR distRun.no_magic) 39 39 AND (diffRun.state = 'full' OR (distRun.clean AND diffRun.state = 'cleaned')) -
branches/eam_branches/20091201/ippTools/share/disttool_pending_warp.sql
r25838 r26857 31 31 AND distRun.stage = 'warp' 32 32 AND distComponent.dist_id IS NULL 33 AND ( distRun.clean OR warpRun.magickedOR distRun.no_magic)33 AND ((warpRun.magicked > 0) OR distRun.no_magic) 34 34 AND (warpRun.state = 'full' OR (distRun.clean AND warpRun.state = 'cleaned')) -
branches/eam_branches/20091201/ippTools/share/disttool_pendingfileset.sql
r26170 r26857 5 5 distRun.outdir as dist_dir, 6 6 stage_id, 7 -- we need to get data_group here but we don't have 8 -- the right tables joined. Perhaps we need to add that column to distRun 9 distRun.label as data_group, 7 distRun.data_group, 10 8 distTarget.filter, 11 9 rcDestination.name AS product_name, -
branches/eam_branches/20091201/ippTools/share/magicdstool_getskycells.sql
r24185 r26857 1 1 SELECT DISTINCT 2 2 diffSkyfile.diff_id, 3 diffRun.tess_id, 3 4 diffSkyfile.skycell_id, 4 diffSkyfile.path_base 5 diffSkyfile.path_base, 6 diffSkyfile.data_state 5 7 FROM magicDSRun 6 8 JOIN magicRun USING(magic_id) 7 9 JOIN magicInputSkyfile USING(magic_id) 10 JOIN diffRun ON magicRun.diff_id = diffRun.diff_id 8 11 JOIN diffSkyfile 9 12 ON magicRun.diff_id = diffSkyfile.diff_id -
branches/eam_branches/20091201/ippTools/share/magictool_definebyquery_select.sql
r26040 r26857 15 15 WHERE diffInputSkyfile.warp1 IS NOT NULL 16 16 AND diffRun.exposure = 1 17 AND diffRun.magicked = 0 17 18 -- diff WHERE hook %s 18 19 UNION … … 27 28 AND diffRun.exposure = 1 28 29 AND diffRun.bothways = 1 30 AND diffRun.magicked = 0 29 31 -- diff WHERE hook %s 30 32 ) AS diffWarps -
branches/eam_branches/20091201/ippTools/share/pxadmin_create_tables.sql
r26015 r26857 1181 1181 backup_path_base VARCHAR(255), 1182 1182 recovery_path_base VARCHAR(255), 1183 streak_frac FLOAT, 1184 run_time FLOAT, 1183 1185 fault SMALLINT, 1184 1186 data_state VARCHAR(64), … … 1350 1352 time_stamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP, 1351 1353 fault SMALLINT, 1354 data_group VARCHAR(64), 1352 1355 note VARCHAR(255), 1353 1356 PRIMARY KEY(dist_id), … … 1428 1431 product VARCHAR(64) NOT NULL, -- product of interest 1429 1432 workdir VARCHAR(255) NOT NULL, -- where to extract 1433 state VARCHAR(64) NOT NULL, -- state 'enabled' or 'disabled' 1430 1434 comment VARCHAR(255), -- for human memory 1431 1435 fileset_last VARCHAR(128), -- last fileset seen -
branches/eam_branches/20091201/ippTools/share/receivetool_list.sql
r23880 r26857 1 1 SELECT * 2 2 FROM receiveSource 3 WHERE receiveSource.state = 'enabled' -
branches/eam_branches/20091201/ippTools/share/receivetool_pendingfile.sql
r24788 r26857 18 18 ON receiveResult.file_id = receiveFile.file_id 19 19 WHERE 20 ((receiveFileset.state = 'new') 20 receiveSource.state = 'enabled' 21 AND ((receiveFileset.state = 'new') 21 22 OR (receiveFileset.state = 'listed' AND receiveFile.component = 'dirinfo' AND receiveFileset.dirinfo IS NULL)) 22 23 AND receiveFileset.fault = 0 -
branches/eam_branches/20091201/ippTools/share/receivetool_pendingfileset.sql
r24788 r26857 1 SELECT * 1 SELECT receiveFileset.*, 2 receiveSource.source, 3 receiveSource.product, 4 receiveSource.workdir 2 5 FROM receiveFileset 3 6 JOIN receiveSource USING(source_id) 4 7 LEFT JOIN receiveFile USING(fileset_id) 5 WHERE receiveFileset.state = 'reg' 8 WHERE receiveSource.state = 'enabled' 9 AND receiveFileset.state = 'reg' 6 10 AND receiveFileset.fault = 0 7 11 AND receiveFile.fileset_id IS NULL -
branches/eam_branches/20091201/ippTools/share/receivetool_toadvance.sql
r24125 r26857 10 10 JOIN receiveFile USING(fileset_id) 11 11 LEFT JOIN receiveResult USING(file_id) 12 WHERE receiveFileset.state = 'new' 12 WHERE receiveSource.state = 'enabled' 13 AND receiveFileset.state = 'new' 13 14 AND receiveFileset.fault = 0 14 15 GROUP BY fileset_id -
branches/eam_branches/20091201/ippTools/share/stacktool_revertsumskyfile_delete.sql
r19448 r26857 2 2 USING stackSumSkyfile, stackRun 3 3 WHERE stackSumSkyfile.stack_id = stackRun.stack_id 4 AND stackRun.state = 'new' 4 5 AND fault != 0 -
branches/eam_branches/20091201/ippTools/share/warptool_change_run_state.sql
r19521 r26857 4 4 -- the chipProcessedImfile sub query 5 5 UPDATE warpRun 6 SET state = '%s' 6 JOIN fakeRun USING(fake_id) 7 JOIN camRun USING(cam_id) 8 JOIN chipRun USING(chip_id) 9 SET warpRun.state = '%s' 10 -- set magicked hook %s 7 11 WHERE 8 12 warpRun.warp_id = %lld … … 12 16 WHERE 13 17 warpSkyfile.warp_id = warpRun.warp_id 14 AND data_state != '%s'18 AND warpSkyfile.data_state != '%s' 15 19 ) = 0 -
branches/eam_branches/20091201/ippTools/share/warptool_change_skyfile_data_state.sql
r23418 r26857 1 1 -- handle changes in warpSkyfile.data_state. 2 -- Used for the modes to cleanedskyfile and topurgedskyfile3 -- args are new data_state, warp_id, skycell_id and current expected state for warpRun2 -- Used for the modes tofullskyfile, tocleanedskyfile and topurgedskyfile 3 -- args are new data_state, string for magic hook, warp_id, skycell_id and current expected state for warpRun 4 4 UPDATE warpSkyfile 5 JOIN warpRun USING(warp_id) 6 JOIN fakeRun USING(fake_id) 7 JOIN camRun USING(cam_id) 8 JOIN chipRun USING(chip_id) 5 9 SET 6 10 data_state = '%s' 11 -- set magicked hook %s 7 12 WHERE 8 13 warp_id = %lld -
branches/eam_branches/20091201/ippTools/share/warptool_finish_run.sql
r23430 r26857 1 1 UPDATE warpRun 2 2 SET state = 'full', 3 magicked = % d3 magicked = %lld 4 4 WHERE warp_id = %lld 5 5 -
branches/eam_branches/20091201/ippTools/share/warptool_finished_run_select.sql
r24043 r26857 8 8 warpSkyCellMap.warp_id as foo, 9 9 warpSkyfile.warp_id as bar, 10 SUM(!warpSkyfile.magicked) = 0as magicked10 warpSkyfile.magicked as magicked 11 11 FROM warpRun 12 12 JOIN warpSkyCellMap -
branches/eam_branches/20091201/ippTools/share/warptool_towarped.sql
r24487 r26857 40 40 AND warpSkyfile.tess_id IS NULL) 41 41 OR (warpRun.state = 'update' 42 AND chipRun.magicked >= 0 43 AND warpSkyfile.fault = 0 42 44 AND warpSkyfile.data_state = 'cleaned') 43 45 ) -
branches/eam_branches/20091201/ippTools/src
- Property svn:ignore
-
branches/eam_branches/20091201/ippTools/src/Makefile.am
r25773 r26857 9 9 disttool \ 10 10 flatcorr \ 11 dqstatstool \ 11 12 magictool \ 12 13 magicdstool \ … … 32 33 pxdata.h \ 33 34 pxfake.h \ 35 pxdqstats.h 34 36 pxmagic.h \ 35 37 pxregister.h \ … … 52 54 flatcorr.h \ 53 55 faketool.h \ 56 dqstatstool.h \ 54 57 magictool.h \ 55 58 magicdstool.h \ … … 77 80 pxfake.c \ 78 81 pxfault.c \ 82 pxdqstats.c \ 79 83 pxmagic.c \ 80 84 pxregister.c \ … … 142 146 faketool.c \ 143 147 faketoolConfig.c 148 149 dqstatstool_CFLAGS = $(PSLIB_CFLAGS) $(PSMODULES_CFLAGS) $(IPPDB_CFLAGS) 150 dqstatstool_LDADD = $(PSLIB_LIBS) $(PSMODULES_LIBS) $(IPPDB_LIBS) libpxtools.la 151 dqstatstool_SOURCES = \ 152 dqstatstool.c \ 153 dqstatstoolConfig.c 144 154 145 155 magictool_CFLAGS = $(PSLIB_CFLAGS) $(PSMODULES_CFLAGS) $(IPPDB_CFLAGS) -
branches/eam_branches/20091201/ippTools/src/camtool.c
r26113 r26857 222 222 tess_id ? tess_id : row->tess_id, 223 223 end_stage ? end_stage : row->end_stage, 224 row->magicked, 224 225 note 225 226 )) { … … 480 481 PXOPT_LOOKUP_S16(quality, config->args, "-quality", false, false); 481 482 482 PXOPT_LOOKUP_S64(magicked, config->args, "-magicked", false, false); 483 // Get this from the chipRun 484 // PXOPT_LOOKUP_S64(magicked, config->args, "-magicked", false, false); 483 485 484 486 // generate restrictions … … 523 525 return false; 524 526 } 527 528 bool status; 529 psS64 chip_magicked = psMetadataLookupS64(&status, output->data[0], "chip_magicked"); 525 530 526 531 camRunRow *pendingRow = camRunObjectFromMetadata(output->data[0]); … … 603 608 } 604 609 605 // NULL for end_stage means go as far as possible 606 // EAM : skip here if fault != 0 607 // Also, we can run fake even if tess_id is not defined 608 if (fault || (pendingRow->end_stage && psStrcasestr(pendingRow->end_stage, "cam"))) { 610 if (fault) { 609 611 psFree(row); 610 612 psFree(pendingRow); … … 618 620 619 621 // since there is only one exp per 'new' set camRun.state = 'full' 620 if (!pxcamRunSetState(config, row->cam_id, "full", magicked)) { 622 // propagate magicked state from chipRun 623 if (!pxcamRunSetState(config, row->cam_id, "full", chip_magicked)) { 621 624 psError(PS_ERR_UNKNOWN, false, "failed to change camRun.state for cam_id: %" PRId64, row->cam_id); 622 625 psFree(row); … … 625 628 } 626 629 psFree(row); 630 631 // EAM: NULL for end_stage means go as far as possible 632 // Also, we can run fake even if tess_id is not defined 633 if (pendingRow->end_stage && psStrcasestr(pendingRow->end_stage, "cam")) { 634 psFree(pendingRow); 635 if (!psDBCommit(config->dbh)) { 636 psError(PS_ERR_UNKNOWN, false, "database error"); 637 return false; 638 } 639 return true; 640 } 627 641 628 642 if (!pxfakeQueueByCamID(config, -
branches/eam_branches/20091201/ippTools/src/chiptool.c
r25935 r26857 612 612 if (psListLength(where->list)) { 613 613 psString whereClause = psDBGenerateWhereConditionSQL(where, NULL); 614 psStringAppend(&query, " WHERE %s ", whereClause);614 psStringAppend(&query, " WHERE %s %s", whereClause, where2 ? where2 : ""); 615 615 psFree(whereClause); 616 616 } else if (psMetadataLookupBool(NULL, config->args, "-all") || (faulted || where2)) { … … 720 720 PXOPT_COPY_STR(config->args, where, "-class_id", "class_id", "=="); 721 721 PXOPT_LOOKUP_STR(state, config->args, "-set_state", false, NULL); 722 if (psListLength(where->list) == 0) { 723 psError(PS_ERR_UNKNOWN, true, "search parameters are required"); 724 return false; 725 } 722 726 723 727 if (!state) { … … 1254 1258 chipRun->tess_id, 1255 1259 chipRun->end_stage, 1260 chipRun->magicked, 1256 1261 NULL // note does not propagate 1257 1262 )) { … … 1295 1300 } 1296 1301 1297 psString set_magic = ""; 1302 char *set_magicked_imfile = ""; 1303 char *set_magicked_run = ""; 1298 1304 if (!strcmp(data_state, "full")) { 1299 // copy the magicked state from the input to the output when transitioning to full state 1300 set_magic = "\n , chipProcessedImfile.magicked = rawImfile.magicked"; 1301 } 1302 1303 // note only updates if chipRun.state = run_state 1304 // XXX note that we have removed this constraint for now 1305 if (!p_psDBRunQueryF(config->dbh, query, data_state, set_magic, chip_id, class_id)) { 1305 // if (chipProcessedImfile.magicked < 0 and rawImfile.magicked = 0) leave magicked unchanged. This will 1306 // block warp processing until destreaking has been done 1307 // otherwise copy magicked from the rawImfile 1308 // Same thing for chipRun/rawExp 1309 set_magicked_imfile = "\n , chipProcessedImfile.magicked = IF((chipProcessedImfile.magicked < 0 AND rawImfile.magicked = 0), chipProcessedImfile.magicked, rawImfile.magicked)"; 1310 set_magicked_run = "\n , chipRun.magicked = IF((chipRun.magicked < 0 AND rawExp.magicked = 0), chipRun.magicked, rawExp.magicked)"; 1311 } else if (!strcmp(data_state, "cleaned") || !strcmp(data_state, "purged")) { 1312 // if magicked is non-zero set it to -1 1313 set_magicked_imfile = "\n, chipProcessedImfile.magicked = IF(chipProcessedImfile.magicked = 0, 0, -1)"; 1314 set_magicked_run = "\n, chipRun.magicked = IF(chipRun.magicked = 0, 0, -1)"; 1315 } 1316 1317 if (!p_psDBRunQueryF(config->dbh, query, data_state, set_magicked_imfile, chip_id, class_id)) { 1306 1318 psFree(query); 1307 1319 psError(PS_ERR_UNKNOWN, false, "database error"); … … 1320 1332 1321 1333 query = pxDataGet("chiptool_change_exp_state.sql"); 1322 if (!p_psDBRunQueryF(config->dbh, query, data_state, chip_id, data_state)) {1334 if (!p_psDBRunQueryF(config->dbh, query, data_state, set_magicked_run, chip_id, data_state)) { 1323 1335 psFree(query); 1324 1336 // rollback -
branches/eam_branches/20091201/ippTools/src/chiptoolConfig.c
r25835 r26857 154 154 psMetadataAddS16(addprocessedimfileArgs, PS_LIST_TAIL, "-fault", 0, "set fault code", 0); 155 155 psMetadataAddS16(addprocessedimfileArgs, PS_LIST_TAIL, "-quality", 0, "set quality", 0); 156 psMetadataAdd Bool(addprocessedimfileArgs, PS_LIST_TAIL, "-magicked", 0, "define magicked status", false);156 psMetadataAddS64(addprocessedimfileArgs, PS_LIST_TAIL, "-magicked", 0, "define magicked status", 0); 157 157 158 158 // -processedimfile -
branches/eam_branches/20091201/ippTools/src/dettool.c
r25324 r26857 550 550 PXOPT_COPY_F32(config->args, where, "-select_airmass_max", "airmass", "<="); 551 551 PXOPT_COPY_F32(config->args, where, "-select_sat_pixel_frac_max", "sat_pixel_frac", "<="); 552 PXOPT_COPY_F32(config->args, where, "-select_sat_pixel_frac_min", "sat_pixel_frac", ">="); 552 553 PXOPT_COPY_F32(config->args, where, "-select_exp_time_min", "exp_time", ">="); 553 554 PXOPT_COPY_F32(config->args, where, "-select_exp_time_max", "exp_time", "<="); -
branches/eam_branches/20091201/ippTools/src/dettoolConfig.c
r25324 r26857 117 117 psMetadataAddF32(definebyqueryArgs, PS_LIST_TAIL, "-select_airmass_max", 0, "define max airmass", NAN); 118 118 psMetadataAddF32(definebyqueryArgs, PS_LIST_TAIL, "-select_sat_pixel_frac_max", 0, "define max fraction of saturated pixels", NAN); 119 psMetadataAddF32(definebyqueryArgs, PS_LIST_TAIL, "-select_sat_pixel_frac_min", 0, "define min fraction of saturated pixels", NAN); 119 120 psMetadataAddF32(definebyqueryArgs, PS_LIST_TAIL, "-select_exp_time_min", 0, "define min exposure time", NAN); 120 121 psMetadataAddF32(definebyqueryArgs, PS_LIST_TAIL, "-select_exp_time_max", 0, "define max exposure time", NAN); -
branches/eam_branches/20091201/ippTools/src/difftool.c
r26181 r26857 55 55 static bool topurgedskyfileMode(pxConfig *config); 56 56 static bool toscrubbedskyfileMode(pxConfig *config); 57 static bool tofullskyfileMode(pxConfig *config); 57 58 58 59 … … 94 95 MODECASE(DIFFTOOL_MODE_EXPORTRUN, exportrunMode); 95 96 MODECASE(DIFFTOOL_MODE_IMPORTRUN, importrunMode); 96 MODECASE(DIFFTOOL_MODE_TOCLEANEDSKYFILE, tocleanedskyfileMode); 97 MODECASE(DIFFTOOL_MODE_TOPURGEDSKYFILE, topurgedskyfileMode); 98 MODECASE(DIFFTOOL_MODE_TOSCRUBBEDSKYFILE, toscrubbedskyfileMode); 97 MODECASE(DIFFTOOL_MODE_TOCLEANEDSKYFILE, tocleanedskyfileMode); 98 MODECASE(DIFFTOOL_MODE_TOPURGEDSKYFILE, topurgedskyfileMode); 99 MODECASE(DIFFTOOL_MODE_TOSCRUBBEDSKYFILE, toscrubbedskyfileMode); 100 MODECASE(DIFFTOOL_MODE_TOFULLSKYFILE, tofullskyfileMode); 99 101 100 102 default: … … 186 188 psMetadata *where = psMetadataAlloc(); 187 189 188 PXOPT_COPY_S64(config->args, where, "-diff_id", " stack_id", "==");190 PXOPT_COPY_S64(config->args, where, "-diff_id", "diff_id", "=="); 189 191 PXOPT_COPY_STR(config->args, where, "-label", "label", "=="); 190 192 PXOPT_COPY_STR(config->args, where, "-state", "state", "=="); … … 1146 1148 PXOPT_COPY_STR(config->args, warp1Where, "-warp_label", "warpRun.label", "=="); 1147 1149 PXOPT_COPY_STR(config->args, warp1Where, "-tess_id", "warpRun.tess_id", "=="); 1150 PXOPT_COPY_STR(config->args, warp1Where, "-data_group", "warpRun.data_group", "=="); 1148 1151 PXOPT_COPY_S64(config->args, warp2Where, "-warp_id", "warpRun.warp_id", "=="); 1149 1152 PXOPT_COPY_STR(config->args, warp2Where, "-tess_id", "warpRun.tess_id", "=="); 1153 PXOPT_COPY_STR(config->args, warp2Where, "-data_group", "warpRun.data_group", "=="); 1150 1154 PXOPT_COPY_STR(config->args, warp2Where, "-skycell_id", "warpSkyfile.skycell_id", "=="); 1151 1155 PXOPT_COPY_STR(config->args, warp2Where, "-warp_label", "warpRun.label", "=="); … … 1361 1365 return false; 1362 1366 } 1367 1368 1363 1369 psString filter = psMetadataLookupStr(&mdok, row, "filter"); 1364 1370 if (!mdok) { … … 2036 2042 PXOPT_LOOKUP_STR(skycell_id, config->args, "-skycell_id", true, false); 2037 2043 2044 2045 psS64 magicked = 0; 2046 if (!strcmp(data_state, "full")) { 2047 PXOPT_LOOKUP_S64(set_magicked, config->args, "-magicked", 0, false); 2048 magicked = set_magicked; 2049 } 2050 2038 2051 psString query = pxDataGet("difftool_change_skyfile_data_state.sql"); 2039 2052 … … 2043 2056 } 2044 2057 2058 psString set_magicked_skyfile = psStringCopy(""); 2059 psString set_magicked_run = psStringCopy(""); 2060 if (magicked != 0 && !strcmp(data_state, "full")) { 2061 psStringAppend(&set_magicked_skyfile, "\n , diffSkyfile.magicked = %" PRId64, magicked); 2062 psStringAppend(&set_magicked_run, "\n , diffRun.magicked = %" PRId64, magicked); 2063 2064 } else if (!strcmp(data_state, "cleaned") || !strcmp(data_state, "purged")) { 2065 psStringAppend(&set_magicked_skyfile, "\n, diffSkyfile.magicked = IF(diffSkyfile.magicked = 0, 0, -1)"); 2066 psStringAppend(&set_magicked_run, "\n, diffRun.magicked = IF(diffRun.magicked = 0, 0, -1)"); 2067 } 2068 2045 2069 // Uses the unconstrained (diffRun.state [NEED NOT EQUAL] run_state) version from warptool.c 2046 2070 2047 if (!p_psDBRunQueryF(config->dbh, query, data_state, diff_id, skycell_id)) {2071 if (!p_psDBRunQueryF(config->dbh, query, data_state, set_magicked_skyfile, diff_id, skycell_id)) { 2048 2072 psError(PS_ERR_UNKNOWN, false, "database error"); 2049 2073 // rollback … … 2052 2076 } 2053 2077 psError(PS_ERR_UNKNOWN, false, "database error"); 2078 psFree(set_magicked_skyfile); 2054 2079 return(false); 2055 2080 } 2081 psFree(set_magicked_skyfile); 2056 2082 psFree(query); 2057 2083 2058 2084 query = pxDataGet("difftool_change_run_state.sql"); 2059 if (!p_psDBRunQueryF(config->dbh, query, data_state, diff_id, data_state)) {2085 if (!p_psDBRunQueryF(config->dbh, query, data_state, set_magicked_run, diff_id, data_state)) { 2060 2086 // rollback 2061 2087 if (!psDBRollback(config->dbh)) { … … 2063 2089 } 2064 2090 psError(PS_ERR_UNKNOWN, false, "database error"); 2091 psFree(set_magicked_run); 2065 2092 return(false); 2066 2093 } … … 2068 2095 if (!psDBCommit(config->dbh)) { 2069 2096 psError(PS_ERR_UNKNOWN, false, "database error"); 2097 psFree(set_magicked_run); 2070 2098 return(false); 2071 2099 } 2100 psFree(set_magicked_run); 2072 2101 2073 2102 return(true); … … 2082 2111 static bool toscrubbedskyfileMode(pxConfig *config) { 2083 2112 return change_skyfile_data_state(config, "scrubbed", "goto_scrubbed"); 2113 } 2114 static bool tofullskyfileMode(pxConfig *config) { 2115 return change_skyfile_data_state(config, "full", "update"); 2084 2116 } 2085 2117 -
branches/eam_branches/20091201/ippTools/src/difftool.h
r25800 r26857 45 45 DIFFTOOL_MODE_TOCLEANEDSKYFILE, 46 46 DIFFTOOL_MODE_TOPURGEDSKYFILE, 47 DIFFTOOL_MODE_TOSCRUBBEDSKYFILE 47 DIFFTOOL_MODE_TOSCRUBBEDSKYFILE, 48 DIFFTOOL_MODE_TOFULLSKYFILE 48 49 49 50 } difftoolMode; -
branches/eam_branches/20091201/ippTools/src/difftoolConfig.c
r26177 r26857 122 122 psMetadataAddStr(adddiffskyfileArgs, PS_LIST_TAIL, "-hostname", 0, "define hostname", 0); 123 123 psMetadataAddF32(adddiffskyfileArgs, PS_LIST_TAIL, "-good_frac", 0, "define %% of good pixels", NAN); 124 psMetadataAdd Bool(adddiffskyfileArgs, PS_LIST_TAIL, "-magicked", 0, "define magicked state", false);124 psMetadataAddS64(adddiffskyfileArgs, PS_LIST_TAIL, "-magicked", 0, "define magicked state", 0); 125 125 126 126 // -advance … … 183 183 psMetadataAddStr(definewarpstackArgs, PS_LIST_TAIL, "-stack_label", 0, "search by stack label", NULL); 184 184 psMetadataAddStr(definewarpstackArgs, PS_LIST_TAIL, "-warp_label", 0, "search by warp label", NULL); 185 psMetadataAddStr(definewarpstackArgs, PS_LIST_TAIL, "-data_group", 0, "search by data_group", NULL); 185 186 psMetadataAddF32(definewarpstackArgs, PS_LIST_TAIL, "-good_frac", 0, "minimum good fraction of skycell", NAN); 186 187 psMetadataAddStr(definewarpstackArgs, PS_LIST_TAIL, "-set_workdir", 0, "define workdir (required)", NULL); … … 253 254 // -pendingcleanuprun 254 255 psMetadata *pendingcleanuprunArgs = psMetadataAlloc(); 255 psMetadataAddStr(pendingcleanuprunArgs, PS_LIST_TAIL, "-label", PS_META_DUPLICATE_OK, "list blocks forspecified label", NULL);256 psMetadataAddStr(pendingcleanuprunArgs, PS_LIST_TAIL, "-label", PS_META_DUPLICATE_OK, "list runs for cleanup with specified label", NULL); 256 257 psMetadataAddBool(pendingcleanuprunArgs, PS_LIST_TAIL, "-simple", 0, "use the simple output format", false); 257 258 psMetadataAddU64(pendingcleanuprunArgs, PS_LIST_TAIL, "-limit", 0, "limit result set to N items", 0); … … 288 289 psMetadataAddS64(toscrubbedskyfileArgs, PS_LIST_TAIL, "-diff_id", 0, "difftool ID to update", 0); 289 290 psMetadataAddStr(toscrubbedskyfileArgs, PS_LIST_TAIL, "-skycell_id", 0, "skycell ID to update", NULL); 291 292 // -tofullskyfile 293 psMetadata *tofullskyfileArgs = psMetadataAlloc(); 294 psMetadataAddS64(tofullskyfileArgs, PS_LIST_TAIL, "-diff_id", 0, "difftool ID to update", 0); 295 psMetadataAddStr(tofullskyfileArgs, PS_LIST_TAIL, "-skycell_id", 0, "skycell ID to update", NULL); 296 psMetadataAddS64(tofullskyfileArgs, PS_LIST_TAIL, "-magicked", 0, "define magicked state", 0); 290 297 291 298 // -exportrun … … 329 336 PXOPT_ADD_MODE("-topurgedskyfile", "set skyfile as purged", DIFFTOOL_MODE_TOPURGEDSKYFILE, topurgedskyfileArgs); 330 337 PXOPT_ADD_MODE("-toscrubbedskyfile", "set skyfile as scrubbed", DIFFTOOL_MODE_TOSCRUBBEDSKYFILE, toscrubbedskyfileArgs); 338 PXOPT_ADD_MODE("-tofullskyfile", "set skyfile as full", DIFFTOOL_MODE_TOFULLSKYFILE, tofullskyfileArgs); 331 339 332 340 if (!pxGetOptions(stderr, argc, argv, config, modes, argSets)) { -
branches/eam_branches/20091201/ippTools/src/disttool.c
r26210 r26857 358 358 psS64 target_id = psMetadataLookupS64(NULL, md, "target_id"); 359 359 psString stage_label = psMetadataLookupStr(NULL, md, "label"); 360 psString data_group = psMetadataLookupStr(NULL, md, "data_group"); 360 361 bool clean = psMetadataLookupBool(NULL, md, "clean"); 361 362 … … 383 384 NULL, // time_stamp 384 385 0, // fault 386 data_group, 385 387 set_note // note does not propagate 386 388 ); … … 1615 1617 PXOPT_COPY_S64(config->args, where, "-target_id", "target_id", "=="); 1616 1618 PXOPT_COPY_STR(config->args, where, "-dest_name", "rcDestination.name", "LIKE"); 1619 PXOPT_COPY_STR(config->args, where, "-stage", "stage", "=="); 1617 1620 PXOPT_COPY_STR(config->args, where, "-filter", "filter", "LIKE"); 1618 1621 PXOPT_COPY_STR(config->args, where, "-dist_group", "dist_group", "LIKE"); … … 1662 1665 PXOPT_COPY_STR(config->args, where, "-dist_group", "dist_group", "LIKE"); 1663 1666 PXOPT_COPY_STR(config->args, where, "-filter", "filter", "LIKE"); 1664 PXOPT_COPY_STR(config->args, where, "-state", " state", "==");1667 PXOPT_COPY_STR(config->args, where, "-state", "rcInterest.state", "=="); 1665 1668 1666 1669 PXOPT_LOOKUP_BOOL(clean, config->args, "-clean", false); -
branches/eam_branches/20091201/ippTools/src/disttoolConfig.c
r26210 r26857 293 293 psMetadataAddS64(updateinterestArgs, PS_LIST_TAIL, "-target_id", 0, "define target_id", 0); 294 294 psMetadataAddStr(updateinterestArgs, PS_LIST_TAIL, "-set_state", 0, "define state (required)", NULL); 295 psMetadataAddStr(updateinterestArgs, PS_LIST_TAIL, "-stage", 0, "define stage", NULL); 295 296 psMetadataAddStr(updateinterestArgs, PS_LIST_TAIL, "-filter", 0, "define filter (LIKE comparison)", NULL); 296 297 psMetadataAddStr(updateinterestArgs, PS_LIST_TAIL, "-dest_name", 0, "define destination name", NULL); -
branches/eam_branches/20091201/ippTools/src/flatcorr.c
r25913 r26857 535 535 row->tess_id, 536 536 "camera", 537 row->magicked, 537 538 NULL // note does not propragate 538 539 )) { -
branches/eam_branches/20091201/ippTools/src/magicdstool.c
r25935 r26857 44 44 static bool tocleanupMode(pxConfig *config); 45 45 46 static bool setmagicDSRunState(pxConfig *config, psS64 magic_id, ps Metadata *where, const char *state);46 static bool setmagicDSRunState(pxConfig *config, psS64 magic_id, psString extraSetString, psMetadata *where, const char *state); 47 47 48 48 # define MODECASE(caseName, func) \ … … 326 326 PXOPT_LOOKUP_STR(state, config->args, "-set_state", true, false); 327 327 328 // optional 329 PXOPT_LOOKUP_STR(set_label, config->args, "-set_label", false, false); 330 psString setString = NULL; 331 if (set_label) { 332 psStringAppend(&setString, ", label = '%s'", set_label); 333 } 334 328 335 PXOPT_LOOKUP_S64(magic_ds_id, config->args, "-magic_ds_id", false, false); 329 336 if (magic_ds_id) { 330 337 331 return setmagicDSRunState(config, magic_ds_id, NULL, state);338 return setmagicDSRunState(config, magic_ds_id, setString, NULL, state); 332 339 333 340 } else if (!strcmp(state, "full")) { … … 336 343 } 337 344 // we can transition by query as well 345 338 346 339 347 psMetadata *where = psMetadataAlloc(); … … 342 350 PXOPT_COPY_STR(config->args, where, "-stage", "stage", "=="); 343 351 344 345 352 if (psListLength(where->list) < 2) { 346 353 psError(PS_ERR_UNKNOWN, true, "at least 2 search arguments are required"); … … 353 360 psMetadataAddS32(where, PS_LIST_TAIL, "re_place", 0, ">", 0); 354 361 } 355 bool result = setmagicDSRunState(config, magic_ds_id, where, state);362 bool result = setmagicDSRunState(config, magic_ds_id, setString, where, state); 356 363 psFree(where); 357 364 … … 445 452 { 446 453 // first query the magicDSRun to find the stage and the stage_id 447 psString query = "SELECT stage, stage_id from magicDSRun where magic_ds_id = %" PRId64;454 psString query = "SELECT stage, stage_id, magic_id from magicDSRun where magic_ds_id = %" PRId64; 448 455 449 456 if (!p_psDBRunQueryF(config->dbh, query, magic_ds_id)) { … … 472 479 psString stage= psMetadataLookupStr(NULL, row, "stage"); 473 480 psS64 stage_id = psMetadataLookupS64(NULL, row, "stage_id"); 481 psS64 magic_id = psMetadataLookupS64(NULL, row, "magic_id"); 474 482 475 483 ippStage stageNum = ippStringToStage(stage); … … 499 507 } 500 508 501 if (!p_psDBRunQueryF(config->dbh, query, magic_ ds_id, stage_id, component)) {509 if (!p_psDBRunQueryF(config->dbh, query, magic_id, stage_id, component)) { 502 510 psError(PS_ERR_UNKNOWN, false, "database error"); 503 511 return false; … … 518 526 { 519 527 // first query the magicDSRun to find the stage and the stage_id 520 psString query = "SELECT stage, stage_id from magicDSRun where magic_ds_id = %" PRId64;528 psString query = "SELECT stage, stage_id, magic_id from magicDSRun where magic_ds_id = %" PRId64; 521 529 522 530 if (!p_psDBRunQueryF(config->dbh, query, magic_ds_id)) { … … 545 553 psString stage = psMetadataLookupStr(NULL, row, "stage"); 546 554 psS64 stage_id = psMetadataLookupS64(NULL, row, "stage_id"); 555 psS64 magic_id = psMetadataLookupS64(NULL, row, "magic_id"); 547 556 548 557 ippStage stageNum = ippStringToStage(stage); … … 570 579 return false; 571 580 } 572 if (!p_psDBRunQueryF(config->dbh, query, magic_ ds_id, stage_id)) {581 if (!p_psDBRunQueryF(config->dbh, query, magic_id, stage_id)) { 573 582 psError(PS_ERR_UNKNOWN, false, "database error"); 574 583 return false; … … 598 607 PXOPT_LOOKUP_STR(recovery_path_base, config->args, "-recovery_path_base", false, false); 599 608 PXOPT_LOOKUP_BOOL(setmagicked, config->args, "-setmagicked", false); 609 PXOPT_LOOKUP_F32(streak_frac, config->args, "-streak_frac", false, false); 610 PXOPT_LOOKUP_F32(run_time, config->args, "-run_time", false, false); 600 611 601 612 if (setmagicked && (fault != 0)) { … … 620 631 } 621 632 622 if (!magicDSFileInsert(config->dbh, magic_ds_id, component, backup_path_base, recovery_path_base, fault, "full")) { 633 if (!magicDSFileInsert(config->dbh, 634 magic_ds_id, 635 component, 636 backup_path_base, 637 recovery_path_base, 638 streak_frac, 639 run_time, 640 fault, 641 "full" // data_state 642 )) { 623 643 // rollback 624 644 if (!psDBRollback(config->dbh)) { … … 699 719 700 720 // set magicDSRun.state to 'full' 701 if (!setmagicDSRunState(config, magic_ds_id, NULL, "full")) {721 if (!setmagicDSRunState(config, magic_ds_id, NULL, NULL, "full")) { 702 722 psError(PS_ERR_UNKNOWN, false, "failed to change magicDSRun.state for magic_ds_id: %" PRId64, 703 723 magic_ds_id); … … 901 921 if (!((strcmp(state, "new") == 0) || 902 922 (strcmp(state, "full") == 0) || 923 (strcmp(state, "failed_revert") == 0) || 924 (strcmp(state, "failed_cleanup") == 0) || 903 925 (strcmp(state, "restored") == 0) || 904 926 (strcmp(state, "censored") == 0) || … … 914 936 } 915 937 916 static bool setmagicDSRunState(pxConfig *config, psS64 magic_ds_id, ps Metadata *where, const char *state)938 static bool setmagicDSRunState(pxConfig *config, psS64 magic_ds_id, psString extraSetStr, psMetadata *where, const char *state) 917 939 { 918 940 PS_ASSERT_PTR_NON_NULL(state, false); … … 924 946 } 925 947 926 psString query = psStringCopy("UPDATE magicDSRun SET state = '%s'"); 948 psString query = NULL; 949 psStringAppend(&query, "UPDATE magicDSRun SET state = '%s' %s\n", state, extraSetStr ? extraSetStr : ""); 927 950 if (magic_ds_id) { 928 951 psStringAppend(&query, " WHERE magic_ds_id = %" PRId64, magic_ds_id); … … 936 959 } 937 960 938 if (!p_psDBRunQuery F(config->dbh, query, state)) {961 if (!p_psDBRunQuery(config->dbh, query)) { 939 962 psError(PS_ERR_UNKNOWN, false, 940 963 "failed to change state for magic_id %" PRId64, magic_ds_id); -
branches/eam_branches/20091201/ippTools/src/magicdstoolConfig.c
r25843 r26857 74 74 psMetadata *updaterunArgs = psMetadataAlloc(); 75 75 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_state", 0, "set state (required)", NULL); 76 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-set_label", 0, "set label", NULL); 76 77 psMetadataAddS64(updaterunArgs, PS_LIST_TAIL, "-magic_ds_id", 0, "define magictool ID", 0); 77 78 psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-stage", 0, "define stage", NULL); … … 102 103 psMetadataAddStr(adddestreakedfileArgs, PS_LIST_TAIL, "-recovery_path_base", 0, "define recovery pixels URI", NULL); 103 104 psMetadataAddBool(adddestreakedfileArgs, PS_LIST_TAIL, "-setmagicked", 0, "update the magicked state of the file", false); 105 psMetadataAddF32(adddestreakedfileArgs, PS_LIST_TAIL, "-streak_frac", 0, "set fraction of pixels masked by streaks", 0); 106 psMetadataAddF32(adddestreakedfileArgs, PS_LIST_TAIL, "-run_time", 0, "set the streaksremove run time for component ", 0); 104 107 psMetadataAddS16(adddestreakedfileArgs, PS_LIST_TAIL, "-fault", 0, "set fault code", 0); 105 108 -
branches/eam_branches/20091201/ippTools/src/pstamptool.c
r26213 r26857 925 925 PXOPT_LOOKUP_BOOL(no_create, config->args, "-no_create", false); 926 926 927 psMetadata *where = psMetadataAlloc(); 928 PXOPT_COPY_STR(config->args, where, "-stage", "stage", "=="); 929 PXOPT_COPY_STR(config->args, where, "-imagedb", "imagedb", "=="); 930 PXOPT_COPY_S64(config->args, where, "-stage_id", "stage_id", "=="); 931 932 // start a transaction eraly so it will contain any row level locks 933 if (!psDBTransaction(config->dbh)) { 934 psError(PS_ERR_UNKNOWN, false, "database error"); 935 return false; 936 } 937 927 938 psString query = pxDataGet("pstamptool_pendingdependent.sql"); 928 939 if (!query) { … … 930 941 return false; 931 942 } 943 psString whereClause = psDBGenerateWhereSQL(where, "WHERE"); 944 if (!no_create) { 945 // This will lock the row until the transaction is committed 946 psStringAppend(&query, " %s FOR UPDATE", whereClause); 947 } else { 948 psStringAppend(&query, " %s", whereClause); 949 } 950 psFree(whereClause); 951 psFree(where); 952 932 953 if (!p_psDBRunQuery(config->dbh, query)) { 933 954 psError(PS_ERR_UNKNOWN, false, "database error"); … … 947 968 if (!dep_id) { 948 969 psError(PS_ERR_UNKNOWN, false, "database error"); 970 psFree(output); 949 971 return false; 950 972 } 951 973 printf("%" PRId64 "\n", dep_id); 974 psFree(output); 975 if (!psDBRollback(config->dbh)) { 976 psError(PS_ERR_UNKNOWN, false, "database error"); 977 } 952 978 return true; 953 979 } 954 980 if (no_create) { 981 if (!psDBRollback(config->dbh)) { 982 psError(PS_ERR_UNKNOWN, false, "database error"); 983 return false; 984 } 955 985 return true; 956 986 } 957 987 // no existing dependent that matches, insert one 988 // Since we have multiple processes running jobs we have a 989 // race condition here so that's why we need to lock the table 958 990 959 991 if (!pstampDependentInsert( … … 967 999 no_magic 968 1000 )) { 1001 if (!psDBRollback(config->dbh)) { 1002 psError(PS_ERR_UNKNOWN, false, "database error"); 1003 } 969 1004 psError(PS_ERR_UNKNOWN, false, "failed to insert pstampDependent"); 970 1005 return false; 971 1006 } 972 1007 1008 if (!psDBCommit(config->dbh)) { 1009 // rollback 1010 if (!psDBRollback(config->dbh)) { 1011 psError(PS_ERR_UNKNOWN, false, "database error"); 1012 } 1013 psError(PS_ERR_UNKNOWN, false, "database error"); 1014 return false; 1015 } 1016 973 1017 psS64 dep_id = psDBLastInsertID(config->dbh); 974 975 1018 printf("%" PRId64 "\n", dep_id); 976 1019 -
branches/eam_branches/20091201/ippTools/src/pxcam.c
r25835 r26857 152 152 char *tess_id, 153 153 char *end_stage, 154 psS64 magicked, 154 155 char *note) 155 156 { … … 168 169 169 170 // queue the exp 170 // XXX chip_id isbeing cast here work around psS64 have a different type171 // XXX chip_id and magicked are being cast here work around psS64 have a different type 171 172 // different on 32/64 172 173 if (!p_psDBRunQueryF(config->dbh, query, … … 182 183 tess_id ? tess_id : "NULL", 183 184 end_stage ? end_stage : "NULL", 185 (long long) magicked, 184 186 note ? note : "NULL", 185 187 (long long)chip_id -
branches/eam_branches/20091201/ippTools/src/pxcam.h
r25835 r26857 40 40 char *tess_id, 41 41 char *end_stage, 42 psS64 magicked, 42 43 char *note); 43 44 -
branches/eam_branches/20091201/ippTools/src/pxchip.c
r25835 r26857 129 129 } 130 130 131 bool pxchipRunSetState(pxConfig *config, psS64 chip_id, const char *state, const boolmagicked)131 bool pxchipRunSetState(pxConfig *config, psS64 chip_id, const char *state, const psS64 magicked) 132 132 { 133 133 PS_ASSERT_PTR_NON_NULL(config, false); … … 140 140 } 141 141 142 char *query = "UPDATE chipRun SET state = '%s', magicked = % dWHERE chip_id = %" PRId64;142 char *query = "UPDATE chipRun SET state = '%s', magicked = %" PRId64 " WHERE chip_id = %" PRId64; 143 143 if (!p_psDBRunQueryF(config->dbh, query, state, magicked, chip_id)) { 144 144 psError(PS_ERR_UNKNOWN, false, … … 174 174 175 175 psString query = psStringCopy("UPDATE chipRun JOIN rawExp USING(exp_id) SET state = '%s'"); 176 177 if (!strcmp(state, "cleaned") || !strcmp(state, "purged")) { 178 // if magicked is non-zero set it to -1 179 psStringAppend(&query, ", chipRun.magicked = IF(chipRun.magicked = 0, 0, -1)"); 180 } 176 181 177 182 if (where && psListLength(where->list) > 0) { … … 219 224 psStringAppend(&query, " %s", whereClause); 220 225 psFree(whereClause); 226 } else { 227 psError(PS_ERR_UNKNOWN, true, "search parameters are required"); 228 return false; 221 229 } 222 230 -
branches/eam_branches/20091201/ippTools/src/pxchip.h
r25835 r26857 27 27 28 28 29 bool pxchipRunSetState(pxConfig *config, psS64 chip_id, const char *state, const boolmagicked);29 bool pxchipRunSetState(pxConfig *config, psS64 chip_id, const char *state, const psS64 magicked); 30 30 bool pxchipProcessedImfileSetStateByQuery(pxConfig *config, psMetadata *where, const char *state); 31 31 -
branches/eam_branches/20091201/ippTools/src/pxmagic.c
r25771 r26857 85 85 } 86 86 if (destreaked) { 87 psStringAppend(out, " AND %s.magicked !=0", table);87 psStringAppend(out, " AND %s.magicked > 0", table); 88 88 } 89 89 return true; -
branches/eam_branches/20091201/ippTools/src/pztool.c
r25418 r26857 117 117 telescope, 118 118 uri, 119 NULL // epoch 119 NULL, // epoch 120 0 // use_compress 120 121 )) { 121 122 psError(PS_ERR_UNKNOWN, false, "database error"); … … 783 784 psMetadata *where = psMetadataAlloc(); 784 785 PXOPT_COPY_STR(config->args, where, "-exp_name", "exp_name", "=="); 785 PXOPT_COPY_STR(config->args, where, "-inst", " inst", "==");786 PXOPT_COPY_STR(config->args, where, "-inst", "camera", "=="); 786 787 PXOPT_COPY_STR(config->args, where, "-telescope", "telescope", "=="); 787 788 PXOPT_COPY_STR(config->args, where, "-class", "class", "=="); -
branches/eam_branches/20091201/ippTools/src/receivetool.c
r24784 r26857 105 105 // optional 106 106 PXOPT_LOOKUP_STR(comment, config->args, "-comment", false, false); 107 PXOPT_LOOKUP_STR(state, config->args, "-state", false, false); 107 108 PXOPT_LOOKUP_STR(last, config->args, "-last", false, false); 108 109 PXOPT_LOOKUP_STR(status_product, config->args, "-status_product", false, false); … … 110 111 PXOPT_LOOKUP_STR(ds_dbhost, config->args, "-ds_dbhost", false, false); 111 112 112 if (!receiveSourceInsert(config->dbh, 0, source, product, workdir, comment, last, status_product, ds_dbname, ds_dbhost)) {113 if (!receiveSourceInsert(config->dbh, 0, source, product, workdir, state, comment, last, status_product, ds_dbname, ds_dbhost)) { 113 114 psError(PS_ERR_UNKNOWN, false, "Database error"); 114 115 return false; … … 142 143 if (psListLength(where->list)) { 143 144 psString whereClause = psDBGenerateWhereConditionSQL(where, NULL); 144 psStringAppend(&query, " WHERE%s", whereClause);145 psStringAppend(&query, " AND %s", whereClause); 145 146 psFree(whereClause); 146 147 } -
branches/eam_branches/20091201/ippTools/src/receivetoolConfig.c
r24125 r26857 49 49 psMetadataAddStr(definesourceArgs, PS_LIST_TAIL, "-workdir", 0, "define workdir (required)", NULL); 50 50 psMetadataAddStr(definesourceArgs, PS_LIST_TAIL, "-comment", 0, "define comment", NULL); 51 psMetadataAddStr(definesourceArgs, PS_LIST_TAIL, "-state", 0, "define state", "enabled"); 51 52 psMetadataAddStr(definesourceArgs, PS_LIST_TAIL, "-last", 0, "define last fileset", NULL); 52 53 psMetadataAddStr(definesourceArgs, PS_LIST_TAIL, "-status_product", 0, "define status_product", NULL); -
branches/eam_branches/20091201/ippTools/src/warptool.c
r25935 r26857 1193 1193 PXOPT_COPY_TIME(config->args, where, "-dateobs_begin", "rawExp.dateobs", ">="); 1194 1194 PXOPT_COPY_TIME(config->args, where, "-dateobs_end", "rawExp.dateobs", "<="); 1195 PXOPT_COPY_STR(config->args, where, "-filter", "rawExp.filter", " ==");1195 PXOPT_COPY_STR(config->args, where, "-filter", "rawExp.filter", "LIKE"); 1196 1196 PXOPT_COPY_S64(config->args, where, "-magicked", "warpSkyfile.magicked", "=="); 1197 1197 pxAddLabelSearchArgs (config, where, "-label", "warpRun.label", "LIKE"); 1198 pxAddLabelSearchArgs (config, where, "-data_group", "warpRun.data_group", "LIKE"); 1198 1199 1199 1200 PXOPT_LOOKUP_BOOL(all, config->args, "-all", false); … … 1646 1647 } 1647 1648 1648 // note only updates if warpRun.state = run_state 1649 // XXX note that we have removed this constraint for now 1650 if (!p_psDBRunQueryF(config->dbh, query, data_state, warp_id, skycell_id)) { 1649 char *set_magicked_skyfile = ""; 1650 char *set_magicked_run = ""; 1651 if (!strcmp(data_state, "full")) { 1652 set_magicked_skyfile = "\n , warpSkyfile.magicked = IF((warpSkyfile.magicked < 0 AND chipRun.magicked = 0), warpSkyfile.magicked, chipRun.magicked)"; 1653 set_magicked_run = "\n, warpRun.magicked = IF((warpRun.magicked < 0 AND chipRun.magicked = 0), warpRun.magicked, chipRun.magicked)"; 1654 1655 } else if (!strcmp(data_state, "cleaned") || !strcmp(data_state, "purged")) { 1656 set_magicked_skyfile = "\n, warpSkyfile.magicked = IF(warpSkyfile.magicked = 0, 0, -1)"; 1657 set_magicked_run = "\n, warpRun.magicked = IF(warpRun.magicked = 0, 0, -1)"; 1658 } 1659 1660 if (!p_psDBRunQueryF(config->dbh, query, data_state, set_magicked_skyfile, warp_id, skycell_id)) { 1651 1661 psError(PS_ERR_UNKNOWN, false, "database error"); 1652 1662 // rollback … … 1660 1670 1661 1671 query = pxDataGet("warptool_change_run_state.sql"); 1662 if (!p_psDBRunQueryF(config->dbh, query, data_state, warp_id, data_state)) {1672 if (!p_psDBRunQueryF(config->dbh, query, data_state, set_magicked_run, warp_id, data_state)) { 1663 1673 // rollback 1664 1674 if (!psDBRollback(config->dbh)) { -
branches/eam_branches/20091201/ippTools/src/warptoolConfig.c
r25835 r26857 212 212 psMetadataAddStr(addwarpedArgs, PS_LIST_TAIL, "-hostname", 0, "define hostname", 0); 213 213 psMetadataAddF32(addwarpedArgs, PS_LIST_TAIL, "-good_frac", 0, "define %% of good pixels", NAN); 214 psMetadataAdd Bool(addwarpedArgs, PS_LIST_TAIL, "-magicked", 0, "define if this skycell has been magicked", false);214 psMetadataAddS64(addwarpedArgs, PS_LIST_TAIL, "-magicked", 0, "define if this skycell has been magicked", 0); 215 215 psMetadataAddS16(addwarpedArgs, PS_LIST_TAIL, "-fault", 0, "set fault code", 0); 216 216 psMetadataAddS16(addwarpedArgs, PS_LIST_TAIL, "-quality", 0, "set quality", 0); … … 230 230 psMetadataAddS16(warpedArgs, PS_LIST_TAIL, "-fault", 0, "search by fault code", 0); 231 231 psMetadataAddStr(warpedArgs, PS_LIST_TAIL, "-label", PS_META_DUPLICATE_OK, "search by warpRun label", NULL); 232 psMetadataAddStr(warpedArgs, PS_LIST_TAIL, "-data_group", PS_META_DUPLICATE_OK, "search by warpRun data_group", NULL); 232 233 // add magic related arguments 233 234 pxmagicAddArguments(warpedArgs); … … 310 311 psMetadataAddStr(tofullskyfileArgs, PS_LIST_TAIL, "-skycell_id", 0, "skycell ID to update", NULL); 311 312 312 // - toupdateskyfile313 // -updateskyfile 313 314 psMetadata *updateskyfileArgs = psMetadataAlloc(); 314 315 psMetadataAddS64(updateskyfileArgs, PS_LIST_TAIL, "-warp_id", 0, "warptool ID to update", 0);
Note:
See TracChangeset
for help on using the changeset viewer.
