Changeset 26981 for trunk/ippTools/src/dettool.c
- Timestamp:
- Feb 17, 2010, 4:40:03 PM (16 years ago)
- File:
-
- 1 edited
-
trunk/ippTools/src/dettool.c (modified) (46 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ippTools/src/dettool.c
r26815 r26981 94 94 MODECASE(DETTOOL_MODE_PENDINGCLEANUP_PROCESSEDEXP, pendingcleanup_processedexpMode); 95 95 MODECASE(DETTOOL_MODE_DONECLEANUP_PROCESSEDEXP, donecleanup_processedexpMode); 96 MODECASE(DETTOOL_MODE_UPDATESTATE_PROCESSED, updatestateprocessedMode);96 MODECASE(DETTOOL_MODE_UPDATESTATE_PROCESSED, updatestateprocessedMode); 97 97 // stacked 98 98 MODECASE(DETTOOL_MODE_TOSTACKED, tostackedMode); … … 143 143 MODECASE(DETTOOL_MODE_PENDINGCLEANUP_RESIDEXP, pendingcleanup_residexpMode); 144 144 MODECASE(DETTOOL_MODE_DONECLEANUP_RESIDEXP, donecleanup_residexpMode); 145 MODECASE(DETTOOL_MODE_UPDATESTATE_RESID, updatestateresidMode);145 MODECASE(DETTOOL_MODE_UPDATESTATE_RESID, updatestateresidMode); 146 146 // detrunsummary 147 147 MODECASE(DETTOOL_MODE_TODETRUNSUMMARY, todetrunsummaryMode); … … 152 152 MODECASE(DETTOOL_MODE_UPDATEDETRUN, updatedetrunMode); 153 153 MODECASE(DETTOOL_MODE_RERUN, rerunMode); 154 MODECASE(DETTOOL_MODE_PENDINGCLEANUP_DETRUNSUMMARY, pendingcleanup_detrunsummaryMode);154 MODECASE(DETTOOL_MODE_PENDINGCLEANUP_DETRUNSUMMARY, pendingcleanup_detrunsummaryMode); 155 155 // register 156 156 MODECASE(DETTOOL_MODE_REGISTER_DETREND, register_detrendMode); … … 187 187 psString query = pxDataGet("dettool_pending.sql"); 188 188 if (!query) { 189 psError(PXTOOLS_ERR_ DATA, false, "failed to retreive SQL statement");190 return false; 191 } 192 189 psError(PXTOOLS_ERR_SYS, false, "failed to retreive SQL statement"); 190 return false; 191 } 192 193 193 psMetadata *where = psMetadataAlloc(); 194 194 PXOPT_COPY_S64(config->args, where, "-exp_id", "exp_id", "=="); … … 260 260 psError(PS_ERR_UNKNOWN, false, "verify mode requires both -ref_det_id and -ref_iter"); 261 261 return false; 262 } 262 } 263 263 if (strcmp(mode, "verify") && ((ref_det_id != 0) || (ref_iter != -1))) { 264 264 psError(PS_ERR_UNKNOWN, false, "master mode cannot have -ref_det_id or -ref_iter set"); 265 265 return false; 266 } 267 266 } 267 268 268 PXOPT_LOOKUP_STR(camera, config->args, "-inst", false, false); 269 269 PXOPT_LOOKUP_STR(telescope, config->args, "-telescope", false, false); … … 310 310 psMetadataItem *mItem = NULL; 311 311 while ((mItem = psListGetAndIncrement(iter))) { 312 psS64 exp_id = mItem->data.S64;312 psS64 exp_id = mItem->data.S64; 313 313 if (!psMetadataAddS64(where, PS_LIST_TAIL, "exp_id", PS_META_DUPLICATE_OK, "==", exp_id)) { 314 314 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id"); … … 319 319 } 320 320 psFree(iter); 321 } 321 } 322 322 if (item->type == PS_DATA_S64) { 323 psS64 exp_id = item->data.S64;324 if (!psMetadataAddS64(where, PS_LIST_TAIL, "exp_id", PS_META_DUPLICATE_OK, "==", exp_id)) {325 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id");326 psFree(where);327 return false;328 }329 } 323 psS64 exp_id = item->data.S64; 324 if (!psMetadataAddS64(where, PS_LIST_TAIL, "exp_id", PS_META_DUPLICATE_OK, "==", exp_id)) { 325 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id"); 326 psFree(where); 327 return false; 328 } 329 } 330 330 331 331 if (psListLength(where->list) < 1) { … … 507 507 psError(PS_ERR_UNKNOWN, false, "verify mode requires both -ref_det_id and -ref_iter"); 508 508 return false; 509 } 509 } 510 510 if (strcmp(mode, "verify") && ((ref_det_id != 0) || (ref_iter != -1))) { 511 511 psError(PS_ERR_UNKNOWN, false, "master mode cannot have -ref_det_id or -ref_iter set"); 512 512 return false; 513 } 513 } 514 514 515 515 PXOPT_LOOKUP_STR(filelevel, config->args, "-filelevel", false, false); … … 676 676 label, 677 677 ref_det_id, 678 ref_iter678 ref_iter 679 679 ); 680 680 psS64 det_id = psDBLastInsertID(config->dbh); … … 745 745 { 746 746 PS_ASSERT_PTR_NON_NULL(config, false); 747 747 748 748 // XXX this mode is not well-tested: probably need to specify iteration here 749 749 PXOPT_LOOKUP_S64(det_id, config->args, "-det_id", true, false); // required … … 762 762 psError(PS_ERR_UNKNOWN, false, "verify mode requires both -ref_det_id and -ref_iter"); 763 763 return false; 764 } 764 } 765 765 if (strcmp(mode, "verify") && ((ref_det_id != 0) || (ref_iter != -1))) { 766 766 psError(PS_ERR_UNKNOWN, false, "master mode cannot have -ref_det_id or -ref_iter set"); 767 767 return false; 768 } 768 } 769 769 770 770 // the new detRun may have different values for these limits: … … 820 820 821 821 if (iteration < 0) { 822 iteration = detRun->iteration;822 iteration = detRun->iteration; 823 823 } 824 824 … … 980 980 psString query = pxDataGet("dettool_definebydetrun.sql"); 981 981 if (!query) { 982 psError(PXTOOLS_ERR_ DATA, false, "failed to retreive SQL statement");982 psError(PXTOOLS_ERR_SYS, false, "failed to retreive SQL statement"); 983 983 return false; 984 984 } … … 992 992 993 993 if (only_accepted) { 994 psStringAppend(&query, " AND accept = 1");994 psStringAppend(&query, " AND accept = 1"); 995 995 } 996 996 … … 1071 1071 psString query = pxDataGet("dettool_runs.sql"); 1072 1072 if (!query) { 1073 psError(PXTOOLS_ERR_ DATA, false, "failed to retreive SQL statement");1073 psError(PXTOOLS_ERR_SYS, false, "failed to retreive SQL statement"); 1074 1074 return false; 1075 1075 } … … 1141 1141 psString query = pxDataGet("dettool_childlessrun.sql"); 1142 1142 if (!query) { 1143 psError(PXTOOLS_ERR_ DATA, false, "failed to retreive SQL statement");1143 psError(PXTOOLS_ERR_SYS, false, "failed to retreive SQL statement"); 1144 1144 psFree(where); 1145 1145 return false; … … 1215 1215 psString query = pxDataGet("dettool_input.sql"); 1216 1216 if (!query) { 1217 psError(PXTOOLS_ERR_ DATA, false, "failed to retreive SQL statement");1217 psError(PXTOOLS_ERR_SYS, false, "failed to retreive SQL statement"); 1218 1218 psFree(where); 1219 1219 return false; … … 1267 1267 psString query = pxDataGet("dettool_raw.sql"); 1268 1268 if (!query) { 1269 psError(PXTOOLS_ERR_ DATA, false, "failed to retreive SQL statement");1269 psError(PXTOOLS_ERR_SYS, false, "failed to retreive SQL statement"); 1270 1270 return false; 1271 1271 } … … 1341 1341 } 1342 1342 1343 // used by updatedetrunMode 1343 // used by updatedetrunMode 1344 1344 bool startNewIteration(pxConfig *config, psS64 det_id) 1345 1345 { … … 1348 1348 psString query = pxDataGet("dettool_start_new_iteration.sql"); 1349 1349 if (!query) { 1350 psError(PXTOOLS_ERR_ DATA, false, "failed to retreive SQL statement");1350 psError(PXTOOLS_ERR_SYS, false, "failed to retreive SQL statement"); 1351 1351 return false; 1352 1352 } … … 1567 1567 } 1568 1568 detInputExpRow *newInputExp = detInputExpRowAlloc( 1569 det_id,1569 det_id, 1570 1570 newIteration, 1571 1571 inputExp->exp_id, … … 1665 1665 solang_max, 1666 1666 label, 1667 ref_det_id,1668 ref_iter1667 ref_det_id, 1668 ref_iter 1669 1669 )) { 1670 1670 psError(PS_ERR_UNKNOWN, false, "database error"); … … 1716 1716 { 1717 1717 PS_ASSERT_PTR_NON_NULL(config, false); 1718 1718 1719 1719 PXOPT_LOOKUP_S64(det_id, config->args, "-det_id", true, false); // required 1720 1720 PXOPT_LOOKUP_STR(class_id, config->args, "-class_id", true, false); // required … … 1731 1731 1732 1732 if (!detRegisteredImfileInsert(config->dbh, 1733 det_id,1734 0, // the iteration is fixed at 01735 class_id,1736 uri,1737 bg,1738 bg_stdev,1739 bg_mean_stdev,1740 user_1,1741 user_2,1742 user_3,1743 user_4,1744 user_5,1745 path_base,1746 "full", 1747 0 // fault code1748 )) {1733 det_id, 1734 0, // the iteration is fixed at 0 1735 class_id, 1736 uri, 1737 bg, 1738 bg_stdev, 1739 bg_mean_stdev, 1740 user_1, 1741 user_2, 1742 user_3, 1743 user_4, 1744 user_5, 1745 path_base, 1746 "full", 1747 0 // fault code 1748 )) { 1749 1749 psError(PS_ERR_UNKNOWN, false, "database error"); 1750 1750 return false; … … 1979 1979 1980 1980 char *query = "UPDATE detStackedImfile SET data_state = '%s'" 1981 " WHERE det_id = %" PRId641982 " AND iteration = %" PRId321983 " AND class_id = '%s'";1981 " WHERE det_id = %" PRId64 1982 " AND iteration = %" PRId32 1983 " AND class_id = '%s'"; 1984 1984 if (!p_psDBRunQueryF(config->dbh, query, data_state, det_id, iteration, class_id)) { 1985 1985 psError(PS_ERR_UNKNOWN, false, 1986 "failed to change state for det_id %" PRId64 ", iteration %" PRId32 "class_id %s", 1987 det_id, iteration, class_id);1986 "failed to change state for det_id %" PRId64 ", iteration %" PRId32 "class_id %s", 1987 det_id, iteration, class_id); 1988 1988 return false; 1989 1989 } … … 2001 2001 2002 2002 char *query = "UPDATE detNormalizedStatImfile SET data_state = '%s'" 2003 " WHERE det_id = %" PRId642004 " AND iteration = %" PRId322005 " AND class_id = '%s'";2003 " WHERE det_id = %" PRId64 2004 " AND iteration = %" PRId32 2005 " AND class_id = '%s'"; 2006 2006 /* fprintf(stderr,"DETTOOL SAYS: %s\n",query); */ 2007 2007 if (!p_psDBRunQueryF(config->dbh, query, data_state, det_id, iteration,class_id)) { 2008 2008 psError(PS_ERR_UNKNOWN, false, 2009 "failed to change state for det_id %" PRId64 ", iteration %" PRId32, 2010 det_id, iteration);2009 "failed to change state for det_id %" PRId64 ", iteration %" PRId32, 2010 det_id, iteration); 2011 2011 return false; 2012 2012 } … … 2024 2024 2025 2025 char *query = "UPDATE detNormalizedImfile SET data_state = '%s'" 2026 " WHERE det_id = %" PRId642027 " AND iteration = %" PRId322028 " AND class_id = '%s'";2026 " WHERE det_id = %" PRId64 2027 " AND iteration = %" PRId32 2028 " AND class_id = '%s'"; 2029 2029 if (!p_psDBRunQueryF(config->dbh, query, data_state, det_id, iteration, class_id)) { 2030 2030 psError(PS_ERR_UNKNOWN, false, 2031 "failed to change state for det_id %" PRId64 ", iteration %" PRId32 " class %s", 2032 det_id, iteration, class_id);2031 "failed to change state for det_id %" PRId64 ", iteration %" PRId32 " class %s", 2032 det_id, iteration, class_id); 2033 2033 return false; 2034 2034 } … … 2045 2045 2046 2046 char *query = "UPDATE detNormalizedExp SET data_state = '%s'" 2047 " WHERE det_id = %" PRId642048 " AND iteration = %" PRId32;2047 " WHERE det_id = %" PRId64 2048 " AND iteration = %" PRId32; 2049 2049 if (!p_psDBRunQueryF(config->dbh, query, data_state, det_id, iteration)) { 2050 2050 psError(PS_ERR_UNKNOWN, false, 2051 "failed to change state for det_id %" PRId64 ", iteration %" PRId32, 2052 det_id, iteration);2051 "failed to change state for det_id %" PRId64 ", iteration %" PRId32, 2052 det_id, iteration); 2053 2053 return false; 2054 2054 } … … 2064 2064 char sqlFilename[80]; 2065 2065 } ExportTable; 2066 2066 2067 2067 int numExportTables = 12; 2068 2068 … … 2100 2100 psString query = pxDataGet(tables[i].sqlFilename); 2101 2101 if (!query) { 2102 psError(PXTOOLS_ERR_ DATA, false, "failed to retreive SQL statement");2102 psError(PXTOOLS_ERR_SYS, false, "failed to retreive SQL statement"); 2103 2103 return false; 2104 2104 } … … 2142 2142 } 2143 2143 psFree(output); 2144 2144 2145 2145 } 2146 2146 … … 2153 2153 { 2154 2154 unsigned int nFail; 2155 2155 2156 2156 int numImportTables = 11; 2157 2157 2158 2158 char tables[11] [80] = {"detInputExp", "detNormalizedExp", 2159 2159 "detNormalizedImfile", "detNormalizedStatImfile", "detProcessedExp", … … 2162 2162 2163 2163 PS_ASSERT_PTR_NON_NULL(config, NULL); 2164 2164 2165 2165 PXOPT_LOOKUP_STR(infile, config->args, "-infile", true, false); 2166 2166 … … 2169 2169 fprintf (stdout, "---- input ----\n"); 2170 2170 psMetadataPrint (stderr, input, 1); 2171 2171 2172 2172 psMetadataItem *item = psMetadataLookup (input, "detRun"); 2173 2173 psAssert (item, "entry not in input?"); … … 2179 2179 detRunRow *detRun = detRunObjectFromMetadata (entry->data.md); 2180 2180 detRunInsertObject (config->dbh, detRun); 2181 2181 2182 2182 // fprintf (stdout, "---- det run ----\n"); 2183 2183 // psMetadataPrint (stderr, entry->data.md, 1); … … 2187 2187 psAssert (item, "entry not in input?"); 2188 2188 psAssert (item->type == PS_DATA_METADATA_MULTI, "entry not multi?"); 2189 2189 2190 2190 switch (i) { 2191 2191 case 0: … … 2201 2201 } 2202 2202 break; 2203 2203 2204 2204 case 1: 2205 2205 for (int i = 0; i < item->data.list->n; i++) { … … 2214 2214 } 2215 2215 break; 2216 2216 2217 2217 case 2: 2218 2218 for (int i = 0; i < item->data.list->n; i++) { … … 2227 2227 } 2228 2228 break; 2229 2229 2230 2230 case 3: 2231 2231 for (int i = 0; i < item->data.list->n; i++) { … … 2240 2240 } 2241 2241 break; 2242 2242 2243 2243 case 4: 2244 2244 for (int i = 0; i < item->data.list->n; i++) { … … 2253 2253 } 2254 2254 break; 2255 2255 2256 2256 case 5: 2257 2257 for (int i = 0; i < item->data.list->n; i++) { … … 2266 2266 } 2267 2267 break; 2268 2268 2269 2269 case 6: 2270 2270 for (int i = 0; i < item->data.list->n; i++) { … … 2279 2279 } 2280 2280 break; 2281 2281 2282 2282 case 7: 2283 2283 for (int i = 0; i < item->data.list->n; i++) { … … 2292 2292 } 2293 2293 break; 2294 2294 2295 2295 case 8: 2296 2296 for (int i = 0; i < item->data.list->n; i++) { … … 2305 2305 } 2306 2306 break; 2307 2307 2308 2308 case 9: 2309 2309 for (int i = 0; i < item->data.list->n; i++) { … … 2318 2318 } 2319 2319 break; 2320 2320 2321 2321 case 10: 2322 2322 for (int i = 0; i < item->data.list->n; i++) {
Note:
See TracChangeset
for help on using the changeset viewer.
