Changeset 23208
- Timestamp:
- Mar 6, 2009, 11:22:21 AM (17 years ago)
- Location:
- branches/eam_branches/eam_branch_20090303/ippTools
- Files:
-
- 9 edited
-
share/dettool_processedimfile.sql (modified) (1 diff)
-
share/dettool_residimfile.sql (modified) (1 diff)
-
share/dettool_tonormalizedstat.sql (modified) (1 diff)
-
share/dettool_toresidexp.sql (modified) (2 diffs)
-
share/dettool_toresidimfile.sql (modified) (3 diffs)
-
share/pxadmin_create_tables.sql (modified) (1 diff)
-
src/dettoolConfig.c (modified) (1 diff)
-
src/dettool_processedimfile.c (modified) (4 diffs)
-
src/dettool_residimfile.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/eam_branches/eam_branch_20090303/ippTools/share/dettool_processedimfile.sql
r18561 r23208 1 -- is this DISTINCT needed? 1 2 SELECT DISTINCT 2 3 detRun.det_type, -
branches/eam_branches/eam_branch_20090303/ippTools/share/dettool_residimfile.sql
r19632 r23208 2 2 detRun.det_type, 3 3 detRun.mode, 4 detResidImfile.*, 5 rawExp.exp_time 6 FROM detResidImfile 7 JOIN detRun 8 USING(det_id, iteration) 9 JOIN rawExp 10 USING(exp_id) 4 rawExp.exp_time, 5 detResidImfile.* 6 FROM detResidImfile 7 JOIN detRun 8 USING(det_id, iteration) 9 JOIN detInputExp 10 ON detRun.det_id = detInputExp.det_id 11 AND detRun.iteration = detInputExp.iteration 12 AND detResidImfile.exp_id = detInputExp.exp_id 13 JOIN rawExp 14 ON rawExp.exp_id = detResidImfile.exp_id -
branches/eam_branches/eam_branch_20090303/ippTools/share/dettool_tonormalizedstat.sql
r18118 r23208 1 -- select detRun.det_id (det_id) 2 -- select detRun.iteration 3 -- by: 4 -- find the current iteration bassed on det_id 5 -- find all exp_ids in the current det_id/iteration from detInputExp 6 -- sort to detInputExp.imfiles to find the largest value per det_id/iter 7 -- compare imfiles to the number of detStackedImfiles by class_id 8 -- and: 9 -- ??? 10 -- det_id is not in detStackedImfile; 11 -- iteration is not in detStackedImfile; 12 13 SELECT 14 det_id, 15 det_type, 16 iteration, 17 camera, 18 workdir, 19 class_id 20 FROM 21 (SELECT DISTINCT 22 detRun.det_id, 23 detRun.det_type, 24 detRun.iteration, 25 detRun.workdir, 26 rawExp.camera, 27 detStackedImfile.class_id, 28 rawImfile.class_id as rawimfile_class_id 29 FROM detRun 30 JOIN detInputExp 31 ON detRun.det_id = detInputExp.det_id 32 AND detRun.iteration = detInputExp.iteration 33 JOIN rawExp 34 ON detInputExp.exp_id = rawExp.exp_id 35 JOIN rawImfile 36 ON rawExp.exp_id = rawImfile.exp_id 37 LEFT JOIN detStackedImfile 38 ON detInputExp.det_id = detStackedImfile.det_id 39 AND detInputExp.iteration = detStackedImfile.iteration 40 AND rawImfile.class_id = detStackedImfile.class_id 41 LEFT JOIN detNormalizedStatImfile 42 ON detStackedImfile.det_id = detNormalizedStatImfile.det_id 43 AND detStackedImfile.iteration = detNormalizedStatImfile.iteration 44 AND detStackedImfile.class_id = detNormalizedStatImfile.class_id 45 WHERE 46 detRun.state = 'run' 47 AND detRun.mode = 'master' 48 AND detNormalizedStatImfile.det_id IS NULL 49 AND detNormalizedStatImfile.iteration IS NULL 50 AND detNormalizedStatImfile.class_id IS NULL 51 GROUP BY 52 -- rawExp.exp_id, 53 detRun.iteration, 54 detRun.det_id 55 HAVING 56 COUNT(rawImfile.class_id) = COUNT(detStackedImfile.class_id) 57 AND SUM(detStackedImfile.fault) = 0 58 ) as tonormalizedstat 1 -- a det_run + iteration is ready for normstat when: all detResidImfile entries for that iteration corresponding to all detProcessedImfile entries are available 2 SELECT 3 detRun.det_id, 4 detRun.det_type, 5 detRun.iteration, 6 detRun.camera, 7 detRun.workdir, 8 detProcessedImfile.class_id, 9 COUNT(detProcessedImfile.class_id), 10 COUNT(detResidImfile.class_id) 11 FROM detRun 12 JOIN detProcessedImfile 13 ON detProcessedImfile.det_id = detRun.det_id 14 LEFT JOIN detResidImfile 15 ON detResidImfile.det_id = detProcessedImfile.det_id 16 AND detResidImfile.class_id = detProcessedImfile.class_id 17 AND detResidImfile.iteration = detRun.iteration 18 LEFT JOIN detNormalizedStatImfile 19 ON detNormalizedStatImfile.det_id = detRun.det_id 20 AND detNormalizedStatImfile.iteration = detRun.iteration 21 AND detNormalizedStatImfile.class_id = detProcessedImfile.class_id 22 WHERE 23 detRun.state = 'run' 24 AND detRun.mode = 'master' 25 AND detNormalizedStatImfile.det_id IS NULL 26 AND detNormalizedStatImfile.iteration IS NULL 27 AND detNormalizedStatImfile.class_id IS NULL 28 GROUP BY 29 detRun.iteration, 30 detRun.det_id 31 HAVING 32 COUNT(detProcessedImfile.class_id) = COUNT(detResidImfile.class_id) 33 AND SUM(detResidImfile.fault) = 0 -
branches/eam_branches/eam_branch_20090303/ippTools/share/dettool_toresidexp.sql
r19815 r23208 5 5 -- id, detrend type, and whether the exposure was included in the stack for 6 6 -- this iteration. 7 8 -- require the corresponding detNormalizedExp to complete before starting 7 9 8 10 -- select detRun.det_id … … 41 43 detResidImfile.class_id 42 44 FROM detRun 45 JOIN detNormalizedExp 46 USING(det_id, iteration) 43 47 JOIN detInputExp 44 48 USING(det_id, iteration) -
branches/eam_branches/eam_branch_20090303/ippTools/share/dettool_toresidimfile.sql
r19816 r23208 13 13 detProcessedImfile.class_id, 14 14 detProcessedImfile.uri, 15 detNormalizedImfile.uri AS det_uri, 15 -- detNormalizedImfile.uri AS det_uri, 16 detStackedImfile.uri AS det_uri, 16 17 detRun.det_id AS ref_det_id, 17 18 detRun.iteration AS ref_iter, … … 26 27 ON detRun.det_id = detProcessedImfile.det_id 27 28 AND detInputExp.exp_id = detProcessedImfile.exp_id 28 JOIN detNormalizedImfile 29 ON detRun.det_id = detNormalizedImfile.det_id 30 AND detRun.iteration = detNormalizedImfile.iteration 31 AND detProcessedImfile.class_id = detNormalizedImfile.class_id 32 JOIN detNormalizedExp 33 ON detRun.det_id = detNormalizedExp.det_id 34 AND detRun.iteration = detNormalizedExp.iteration 29 JOIN detStackedImfile 30 ON detRun.det_id = detStackedImfile.det_id 31 AND detRun.iteration = detStackedImfile.iteration 32 AND detProcessedImfile.class_id = detStackedImfile.class_id 33 -- EAM : replacing detNormalizedImfile with detStackedImfile to change the sequencing 34 -- JOIN detNormalizedImfile 35 -- ON detRun.det_id = detNormalizedImfile.det_id 36 -- AND detRun.iteration = detNormalizedImfile.iteration 37 -- AND detProcessedImfile.class_id = detNormalizedImfile.class_id 38 -- EAM : we there is no reason to wait for all stacks to complete before continuing 39 -- JOIN detNormalizedExp 40 -- ON detRun.det_id = detNormalizedExp.det_id 41 -- AND detRun.iteration = detNormalizedExp.iteration 35 42 LEFT JOIN detResidImfile 36 43 ON detRun.det_id = detResidImfile.det_id … … 41 48 detRun.state = 'run' 42 49 AND detRun.mode = 'master' 43 AND detNormalizedImfile.fault = 0 44 AND detNormalizedExp.fault = 0 50 AND detStackedImfile.fault = 0 51 -- AND detNormalizedImfile.fault = 0 52 -- AND detNormalizedExp.fault = 0 45 53 AND detResidImfile.det_id IS NULL 46 54 AND detResidImfile.iteration IS NULL -
branches/eam_branches/eam_branch_20090303/ippTools/share/pxadmin_create_tables.sql
r21308 r23208 737 737 REFERENCES detInputExp(det_id, iteration, exp_id), 738 738 FOREIGN KEY (det_id, exp_id, class_id) 739 REFERENCES detProcessedImfile(det_id, exp_id, class_id), 740 FOREIGN KEY (ref_det_id, ref_iter) 741 REFERENCES detNormalizedExp(det_id, iteration) 739 REFERENCES detProcessedImfile(det_id, exp_id, class_id) 742 740 ) ENGINE=innodb DEFAULT CHARSET=latin1; 743 741 -
branches/eam_branches/eam_branch_20090303/ippTools/src/dettoolConfig.c
r23154 r23208 640 640 // -residimfile 641 641 psMetadata *residimfileArgs = psMetadataAlloc(); 642 psMetadataAddS64(residimfileArgs, PS_LIST_TAIL, "-det_id", 0, "search for detrend ID", 0);643 psMetadataAddS32(residimfileArgs, PS_LIST_TAIL, "-iteration", 0, "search for iteration number", 0);644 psMetadataAddS64(residimfileArgs, PS_LIST_TAIL, "-exp_id", 0, "search by detrend ID", 0);645 psMetadataAddStr(residimfileArgs, PS_LIST_TAIL, "-class_id", 0, "search for class ID", NULL);646 psMetadataAddStr(residimfileArgs, PS_LIST_TAIL, "-recip", 0, "search for recipe", NULL);647 psMetadataAddU64(residimfileArgs, PS_LIST_TAIL, "-limit", 0, "limit result set to N items", 0);642 psMetadataAddS64(residimfileArgs, PS_LIST_TAIL, "-det_id", 0, "search for detrend ID", 0); 643 psMetadataAddS32(residimfileArgs, PS_LIST_TAIL, "-iteration", 0, "search for iteration number", 0); 644 psMetadataAddS64(residimfileArgs, PS_LIST_TAIL, "-exp_id", 0, "search by detrend ID", 0); 645 psMetadataAddStr(residimfileArgs, PS_LIST_TAIL, "-class_id", 0, "search for class ID", NULL); 646 psMetadataAddStr(residimfileArgs, PS_LIST_TAIL, "-recip", 0, "search for recipe", NULL); 647 psMetadataAddU64(residimfileArgs, PS_LIST_TAIL, "-limit", 0, "limit result set to N items", 0); 648 648 psMetadataAddBool(residimfileArgs, PS_LIST_TAIL, "-faulted", 0, "only return imfiles with a fault status set", false); 649 649 psMetadataAddBool(residimfileArgs, PS_LIST_TAIL, "-simple", 0, "use the simple output format", false); 650 psMetadataAddStr(residimfileArgs, PS_LIST_TAIL, "-select_state", 0, "search for state", NULL); 650 psMetadataAddBool(residimfileArgs, PS_LIST_TAIL, "-included", 0, "restrict results to exposures 'includeded' in the current iteration", false); 651 psMetadataAddStr(residimfileArgs, PS_LIST_TAIL, "-select_state", 0, "search for state", NULL); 651 652 652 653 // -revertresidimfile -
branches/eam_branches/eam_branch_20090303/ippTools/src/dettool_processedimfile.c
r19621 r23208 165 165 PS_ASSERT_PTR_NON_NULL(config, false); 166 166 167 bool hasWhere = false;168 169 PXOPT_LOOKUP_BOOL(included, config->args, "-included", false);170 PXOPT_LOOKUP_BOOL(faulted, config->args, "-faulted", false);171 PXOPT_LOOKUP_U64(limit, config->args, "-limit", false, false);172 PXOPT_LOOKUP_BOOL(simple, config->args, "-simple", false);173 174 167 psMetadata *where = psMetadataAlloc(); 175 168 PXOPT_COPY_S64(config->args, where, "-det_id", "detProcessedImfile.det_id", "=="); … … 179 172 PXOPT_COPY_STR(config->args, where, "-select_mode", "detRun.mode", "=="); 180 173 174 PXOPT_LOOKUP_U64(limit, config->args, "-limit", false, false); 175 PXOPT_LOOKUP_BOOL(simple, config->args, "-simple", false); 176 177 PXOPT_LOOKUP_BOOL(faulted, config->args, "-faulted", false); 178 PXOPT_LOOKUP_BOOL(included, config->args, "-included", false); 179 181 180 psString query = pxDataGet("dettool_processedimfile.sql"); 182 181 if (!query) { … … 186 185 } 187 186 187 bool hasWhere = false; 188 188 if (psListLength(where->list)) { 189 189 psString whereClause = psDBGenerateWhereSQL(where, NULL); … … 211 211 212 212 if (faulted) { 213 // list only faulted rows 213 214 psStringAppend(&query, " %s", " detProcessedImfile.fault != 0"); 214 215 } else { -
branches/eam_branches/eam_branch_20090303/ippTools/src/dettool_residimfile.c
r19632 r23208 159 159 PXOPT_LOOKUP_U64(limit, config->args, "-limit", false, false); 160 160 PXOPT_LOOKUP_BOOL(simple, config->args, "-simple", false); 161 161 162 PXOPT_LOOKUP_BOOL(faulted, config->args, "-faulted", false); 163 PXOPT_LOOKUP_BOOL(included, config->args, "-included", false); 162 164 163 165 psString query = pxDataGet("dettool_residimfile.sql"); … … 175 177 } 176 178 psFree(where); 179 180 // restrict search to included imfiles 181 if (included) { 182 if (hasWhere) { 183 psStringAppend(&query, " AND detInputExp.include = 1"); 184 } else { 185 psStringAppend(&query, " WHERE detInputExp.include = 1"); 186 } 187 hasWhere = true; 188 } 177 189 178 190 if (hasWhere) {
Note:
See TracChangeset
for help on using the changeset viewer.
