Changeset 35196 for trunk/ippTools
- Timestamp:
- Feb 21, 2013, 1:44:26 PM (13 years ago)
- Location:
- trunk/ippTools
- Files:
-
- 2 added
- 4 edited
-
share/Makefile.am (modified) (1 diff)
-
share/pxadmin_create_tables.sql (modified) (5 diffs)
-
share/releasetool_definerelstack.sql (added)
-
share/releasetool_definerelstack_with_skycal.sql (added)
-
src/releasetool.c (modified) (13 diffs)
-
src/releasetoolConfig.c (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ippTools/share/Makefile.am
r35192 r35196 466 466 releasetool_listrelease.sql \ 467 467 releasetool_listrelexp.sql \ 468 releasetool_definerelexp.sql 468 releasetool_definerelexp.sql \ 469 releasetool_definerelstack.sql \ 470 releasetool_definerelstack_with_skycal.sql 469 471 -
trunk/ippTools/share/pxadmin_create_tables.sql
r35153 r35196 2124 2124 zpt_obs FLOAT, 2125 2125 zpt_stdev FLOAT, 2126 fwhm_major FLOAT, 2127 fwhm_minor FLOAT, 2126 2128 quality SMALLINT NOT NULL, 2127 2129 hostname VARCHAR(64) NOT NULL, … … 2185 2187 path_base VARCHAR(255), -- path_base of any supporting files for this 2186 2188 -- release of this exposure. 2189 fault SMALLINT NOT NULL, 2187 2190 registered DATETIME, -- insertion time for this row 2188 2191 time_stamp DATETIME, -- time of last update for this row … … 2190 2193 FOREIGN KEY(rel_id) REFERENCES ippRelease(rel_id), 2191 2194 KEY (state), 2195 KEY (fault), 2192 2196 FOREIGN KEY(exp_id) REFERENCES rawExp(exp_id), 2193 2197 FOREIGN KEY(chip_id) REFERENCES chipRun(chip_id), … … 2201 2205 skycal_id BIGINT, -- id of the sky calibration run that supplied the calibration 2202 2206 -- for this release of this skycell. 2203 skycell_id varchar(64), 2204 tess_id varchar(64), 2207 skycell_id VARCHAR(64), 2208 tess_id VARCHAR(64), 2209 filter VARCHAR(16), 2205 2210 state VARCHAR(16), -- released, pending, archive, drop 2206 2211 flags INT UNSIGNED, … … 2208 2213 zpt_obs FLOAT, -- calibrated zero point for this release of this skycell 2209 2214 zpt_stdev FLOAT, 2210 fwhm_major FLOAT, -- seeing as measured by staticsky2215 mjd_obs INT UNSIGNED, -- for nightly stacks the mjd_obs 2211 2216 path_base VARCHAR(255), -- path_base of any supporting files, 2217 fault SMALLINT NOT NULL, 2212 2218 registered DATETIME, 2213 2219 time_stamp DATETIME, 2214 2220 PRIMARY KEY (relstack_id), 2215 2221 KEY (tess_id, skycell_id), 2216 KEY (rel_id, tess_id, skycell_id), 2222 KEY (rel_id, tess_id, skycell_id, filter, mjd_obs), 2223 KEY (stack_type), 2224 KEY (mjd_obs), 2225 KEY (state), 2226 KEY (fault), 2217 2227 FOREIGN KEY(rel_id) REFERENCES ippRelease(rel_id), 2218 2228 FOREIGN KEY(stack_id) REFERENCES stackRun(stack_id) -
trunk/ippTools/src/releasetool.c
r35152 r35196 201 201 return false; 202 202 } 203 PXOPT_LOOKUP_STR(release_state, config->args, "-set_release_state", true, false); 203 PXOPT_LOOKUP_STR(release_state, config->args, "-set_release_state", false, false); 204 PXOPT_LOOKUP_S32(priority, config->args, "-set_priority", false, false); 205 if (!release_state && !priority) { 206 psError(PXTOOLS_ERR_CONFIG, true, "at least one of -set_release_staate and -set_priority is required\n"); 207 return false; 208 } 204 209 205 210 psMetadata *where = psMetadataAlloc(); … … 208 213 PXOPT_COPY_STR(config->args, where, "-releaseName", "releaseName", "=="); 209 214 210 psString query = NULL; 211 psStringAppend(&query, "UPDATE ippRelease SET release_state = '%s'", release_state); 215 psString sep = ""; 216 psString comma = ", "; 217 psString query = psStringCopy("UPDATE ippRelease SET"); 218 if (release_state) { 219 psStringAppend(&query, "%s release_state = '%s'", sep, release_state); 220 sep = comma; 221 } 222 if (priority != 0) { 223 psStringAppend(&query, "%s priority = %d", sep, priority); 224 sep = comma; 225 } 212 226 213 227 psString whereClause = psDBGenerateWhereConditionSQL(where, NULL); … … 334 348 PXOPT_LOOKUP_STR(state, config->args, "-set_state", true, false); 335 349 PXOPT_LOOKUP_U32(flags, config->args, "-set_flags", false, false); 350 PXOPT_LOOKUP_F32(zpt_obs, config->args, "-set_zpt_obs", false, false); 351 PXOPT_LOOKUP_F32(zpt_stdev, config->args, "-set_zpt_stdev", false, false); 336 352 PXOPT_LOOKUP_STR(path_base, config->args, "-set_path_base", false, false); 353 PXOPT_LOOKUP_S16(fault, config->args, "-set_fault", false, false); 337 354 338 355 PXOPT_LOOKUP_BOOL(pretend, config->args, "-pretend", false); … … 398 415 psS64 chip_id = psMetadataLookupS64(&status, md, "chip_id"); 399 416 psS64 cam_id = psMetadataLookupS64(&status, md, "cam_id"); 400 psF32 zpt_obs = psMetadataLookupF32(&status, md, "zpt_obs"); 401 psF32 zpt_stdev = psMetadataLookupF32(&status, md, "zpt_stdev"); 417 // if zpt_obs or zpt_stdev were not supplied use the results from the camRun 418 if (!isfinite(zpt_obs)) { 419 zpt_obs = psMetadataLookupF32(&status, md, "zpt_obs"); 420 } 421 if (!isfinite(zpt_stdev)) { 422 zpt_stdev = psMetadataLookupF32(&status, md, "zpt_stdev"); 423 } 402 424 403 425 if (!relExpInsert(config->dbh, … … 412 434 zpt_stdev, 413 435 path_base, 436 fault, 414 437 now, // registered 415 438 now // time_stamp … … 546 569 psMetadata *where = psMetadataAlloc(); 547 570 548 PXOPT_COPY_STR(config->args, where, "-label", "skycalRun.label", "=="); 549 PXOPT_COPY_STR(config->args, where, "-data_group", "skycalRun.data_group", "=="); 550 PXOPT_COPY_S64(config->args, where, "-skycal_id", "skcalRun.skycal_id", "=="); 551 552 // Insure that at least one of the skcalRun selectors is supplied 571 bool includeSkycal = false; 572 573 PXOPT_COPY_S64(config->args, where, "-skycal_id", "skycalRun.skycal_id", "=="); 574 PXOPT_COPY_STR(config->args, where, "-skycal_label", "skycalRun.label", "=="); 575 PXOPT_COPY_STR(config->args, where, "-skycal_data_group", "skycalRun.data_group", "=="); 576 if (psListLength(where->list)) { 577 includeSkycal = true; 578 } 579 580 PXOPT_COPY_STR(config->args, where, "-label", "stackRun.label", "=="); 581 PXOPT_COPY_STR(config->args, where, "-data_group", "stackRun.data_group", "=="); 582 PXOPT_COPY_S64(config->args, where, "-stack_id", "stackRun.stack_id", "=="); 583 584 // Insure that at least one of the skycalRun selectors is supplied 553 585 if (!psListLength(where->list)) { 554 586 psFree(where); … … 557 589 } 558 590 559 PXOPT_COPY_S64(config->args, where, "-stack_id", "stackRun.stack_id", "=="); 560 PXOPT_COPY_STR(config->args, where, "-tess_id", "stackRun.tess_id", "=="); 561 PXOPT_COPY_STR(config->args, where, "-skycell_id", "stackRun.skycell_id", "=="); 591 // PXOPT_COPY_STR(config->args, where, "-tess_id", "stackRun.tess_id", "=="); 592 // PXOPT_COPY_STR(config->args, where, "-skycell_id", "stackRun.skycell_id", "=="); 562 593 563 594 // insure that at least one of these is supplied to select the release … … 580 611 PXOPT_LOOKUP_F32(zpt_obs, config->args, "-set_zpt_obs", false, false); 581 612 PXOPT_LOOKUP_F32(zpt_stdev, config->args, "-set_zpt_stdev", false, false); 582 PXOPT_LOOKUP_F32(fwhm_major, config->args, "-set_fwhm_major", false, false);583 613 PXOPT_LOOKUP_STR(path_base, config->args, "-set_path_base", false, false); 614 PXOPT_LOOKUP_S16(fault, config->args, "-set_fault", false, false); 584 615 585 616 PXOPT_LOOKUP_BOOL(pretend, config->args, "-pretend", false); … … 587 618 588 619 // find the parameters of all the exposures that we want to add to the release 589 psString query = pxDataGet("releasetool_definerelstack.sql"); 620 psString query; 621 622 if (includeSkycal) { 623 query = pxDataGet("releasetool_definerelstack_with_skycal.sql"); 624 } else { 625 query = pxDataGet("releasetool_definerelstack.sql"); 626 } 590 627 if (!query) { 591 628 psError(PXTOOLS_ERR_SYS, false, "failed to retreive SQL statement"); … … 620 657 if (pretend) { 621 658 // negative simple so the default is true 622 if (!ippdbPrintMetadatas(stdout, output, " chipRun", !simple)) {659 if (!ippdbPrintMetadatas(stdout, output, "relstack", !simple)) { 623 660 psError(PS_ERR_UNKNOWN, false, "failed to print array"); 624 661 psFree(output); … … 642 679 bool status = true; 643 680 psS32 rel_id = psMetadataLookupS32(&status, md, "rel_id"); 681 psS64 stack_id = psMetadataLookupS64(&status, md, "stack_id"); 644 682 psS64 skycal_id = psMetadataLookupS64(&status, md, "skycal_id"); 645 683 psString skycell_id = psMetadataLookupStr(&status, md, "skycell_id"); 646 684 psString tess_id = psMetadataLookupStr(&status, md, "tess_id"); 647 psString state = psMetadataLookupStr(&status, md, "state");685 psString filter = psMetadataLookupStr(&status, md, "filter"); 648 686 649 687 // use skycal zero point measurement if not supplied with arguments 650 688 psF32 sc_zpt_obs = psMetadataLookupF32(&status, md, "zpt_obs"); 651 689 psF32 sc_zpt_stdev = psMetadataLookupF32(&status, md, "zpt_stdev"); 690 psF32 stack_mjd_obs = psMetadataLookupF32(&status, md, "mjd_obs"); 691 692 psU32 mjd_obs = 0; 693 if (!strcmp(stack_type, "nightly")) { 694 // only for nightly stacks do we set mjd_obs to a non zero value 695 // We use integer day because this is part of the key that is used 696 // to make sure entries are unique 697 // KEY (rel_id, tess_id, skycell_id, filter, mjd_obs), 698 // 1 entry per release, skycell, filter and mjd_obs. 699 // mjd_obs is zero for deep and reference stacks 700 mjd_obs = (psU32) stack_mjd_obs; 701 } 652 702 653 703 if (!relStackInsert(config->dbh, 654 704 0, // relstack_id (auto increment) 655 705 rel_id, 706 stack_id, 656 707 skycal_id, 657 708 skycell_id, 658 709 tess_id, 710 filter, 659 711 state, 660 712 flags, 661 713 stack_type, 662 isfinite(zpt_obs) ? zpt_obs: sc_zpt_obs,714 isfinite(zpt_obs) ? zpt_obs : sc_zpt_obs, 663 715 isfinite(zpt_stdev) ? zpt_stdev : sc_zpt_stdev, 664 fwhm_major,716 mjd_obs, 665 717 path_base, 718 fault, 666 719 now, // registered 667 720 now // time_stamp … … 671 724 } 672 725 psError(PS_ERR_UNKNOWN, false, 673 "failed to trying to insert rel Exp for skycal_id %" PRId64, skycal_id);726 "failed to trying to insert relStack for stack_id %" PRId64, stack_id); 674 727 psFree(output); 675 728 psFree(now); … … 705 758 PXOPT_COPY_TIME(config->args, where, "-dateobs_begin","rawExp.dateobs", ">="); 706 759 PXOPT_COPY_TIME(config->args, where, "-dateobs_end", "rawExp.dateobs", "<="); 707 PXOPT_COPY_F32(config->args, where, "-fwhm_min", " camProcessedExp.fwhm_major", ">=");708 PXOPT_COPY_F32(config->args, where, "-fwhm_max", " camProcessedExp.fwhm_major", "<=");709 PXOPT_COPY_STR(config->args, where, "-exp_name", "rawExp.exp_ name", "==");760 PXOPT_COPY_F32(config->args, where, "-fwhm_min", "skycalResult.fwhm_major", ">="); 761 PXOPT_COPY_F32(config->args, where, "-fwhm_max", "skycalresult.fwhm_major", "<="); 762 PXOPT_COPY_STR(config->args, where, "-exp_name", "rawExp.exp_ame", "=="); 710 763 PXOPT_COPY_S64(config->args, where, "-exp_id", "relExp.exp_id", "=="); 711 764 PXOPT_COPY_S64(config->args, where, "-chip_id", "relExp.chip_id", "=="); -
trunk/ippTools/src/releasetoolConfig.c
r35048 r35196 63 63 psMetadataAddS32(definereleaseArgs, PS_LIST_TAIL, "-set_dataRelease", 0, "define dataRelease", -1); 64 64 psMetadataAddStr(definereleaseArgs, PS_LIST_TAIL, "-set_release_state", 0, "define release state", NULL); 65 psMetadataAddS32(definereleaseArgs, PS_LIST_TAIL, "-set_priority", 0, "define release priority", -1);65 psMetadataAddS32(definereleaseArgs, PS_LIST_TAIL, "-set_priority", 0, "define release priority", 0); 66 66 67 67 // -uptdaterelease … … 73 73 74 74 // Only support changing state and priority for now 75 psMetadataAddStr(updatereleaseArgs, PS_LIST_TAIL, "-set_release_state", 0, "define new release state (required)", NULL);75 psMetadataAddStr(updatereleaseArgs, PS_LIST_TAIL, "-set_release_state", 0, "define new release state", NULL); 76 76 psMetadataAddS32(updatereleaseArgs, PS_LIST_TAIL, "-set_priority", 0, "define new release priority", 0); 77 77 … … 109 109 // parameters of the relExp 110 110 psMetadataAddStr(definerelexpArgs, PS_LIST_TAIL, "-set_state", 0, "define state (required)", NULL); 111 psMetadataAddStr(definerelexpArgs, PS_LIST_TAIL, "-set_path_base", 0, "define state", NULL);112 111 psMetadataAddU32(definerelexpArgs, PS_LIST_TAIL, "-set_flags", 0, "define flags", 0); 113 114 psMetadataAddBool(definerelexpArgs, PS_LIST_TAIL, "-pretend", 0, "do not actual modify the database", false); 112 psMetadataAddF32(definerelexpArgs, PS_LIST_TAIL, "-set_zpt_obs", 0, "define zero point", NAN); 113 psMetadataAddF32(definerelexpArgs, PS_LIST_TAIL, "-set_zpt_stdev", 0, "define zero point stdev", NAN); 114 psMetadataAddStr(definerelexpArgs, PS_LIST_TAIL, "-set_path_base", 0, "define state (required)", NULL); 115 psMetadataAddS16(definerelexpArgs, PS_LIST_TAIL, "-set_fault", 0, "define fault", 0); 116 117 psMetadataAddBool(definerelexpArgs, PS_LIST_TAIL, "-pretend", 0, "do not actually modify the database", false); 115 118 psMetadataAddBool(definerelexpArgs, PS_LIST_TAIL, "-simple", 0, "use the simpel output format", false); 116 119 … … 155 158 psMetadataAddBool(listrelexpArgs, PS_LIST_TAIL, "-simple", 0, "use the simple output format", false); 156 159 160 // -definerelstack 161 psMetadata *definerelstackArgs = psMetadataAlloc(); 162 163 // set the target release 164 psMetadataAddStr(definerelstackArgs, PS_LIST_TAIL, "-releaseName", 0, "define release name", NULL); 165 psMetadataAddS32(definerelstackArgs, PS_LIST_TAIL, "-rel_id", 0, "define release ID", 0); 166 167 // select the processing 168 psMetadataAddS64(definerelstackArgs, PS_LIST_TAIL, "-stack_id", 0, "select by stack ID", 0); 169 psMetadataAddS64(definerelstackArgs, PS_LIST_TAIL, "-skycal_id", 0, "select by skycal ID", 0); 170 psMetadataAddStr(definerelstackArgs, PS_LIST_TAIL, "-label", 0, "select by stackRun.label", NULL); 171 psMetadataAddStr(definerelstackArgs, PS_LIST_TAIL, "-data_group", 0, "select by stackRun.data_group", NULL); 172 psMetadataAddStr(definerelstackArgs, PS_LIST_TAIL, "-skycal_label", 0, "select by skycalRun.label", NULL); 173 psMetadataAddStr(definerelstackArgs, PS_LIST_TAIL, "-skycal_data_group", 0, "select by skycalRun.data_group", NULL); 174 175 // parameters of the relStack 176 psMetadataAddStr(definerelstackArgs, PS_LIST_TAIL, "-set_state", 0, "define state (required)", NULL); 177 psMetadataAddU32(definerelstackArgs, PS_LIST_TAIL, "-set_flags", 0, "define flags", 0); 178 psMetadataAddStr(definerelstackArgs, PS_LIST_TAIL, "-set_stack_type", 0, "define stack type (required)", NULL); 179 psMetadataAddF32(definerelstackArgs, PS_LIST_TAIL, "-set_zpt_obs", 0, "define zero point", NAN); 180 psMetadataAddF32(definerelstackArgs, PS_LIST_TAIL, "-set_zpt_stdev", 0, "define zero point stdev", NAN); 181 psMetadataAddF32(definerelstackArgs, PS_LIST_TAIL, "-set_fwhm_major", 0, "define fwhm_major", NAN); 182 psMetadataAddStr(definerelstackArgs, PS_LIST_TAIL, "-set_path_base", 0, "define state (required)", NULL); 183 psMetadataAddS16(definerelstackArgs, PS_LIST_TAIL, "-set_fault", 0, "define fault", 0); 184 185 psMetadataAddBool(definerelstackArgs, PS_LIST_TAIL, "-pretend", 0, "do not actually modify the database", false); 186 psMetadataAddBool(definerelstackArgs, PS_LIST_TAIL, "-simple", 0, "use the simpel output format", false); 187 188 // ****************************************************************** 189 157 190 psMetadata *argSets = psMetadataAlloc(); 158 191 psMetadata *modes = psMetadataAlloc(); … … 160 193 PXOPT_ADD_MODE("-definesurvey", "define a survey", RELEASETOOL_MODE_DEFINESURVEY, definesurveyArgs); 161 194 PXOPT_ADD_MODE("-listsurvey", "list skycell parameters", RELEASETOOL_MODE_LISTSURVEY, listsurveyArgs); 195 162 196 PXOPT_ADD_MODE("-definerelease", "define a release", RELEASETOOL_MODE_DEFINERELEASE, definereleaseArgs); 163 197 PXOPT_ADD_MODE("-updaterelease", "update a release", RELEASETOOL_MODE_UPDATERELEASE, updatereleaseArgs); 164 198 PXOPT_ADD_MODE("-listrelease", "list releases", RELEASETOOL_MODE_LISTRELEASE, listreleaseArgs); 199 165 200 PXOPT_ADD_MODE("-definerelexp", "define a released exposure", RELEASETOOL_MODE_DEFINERELEXP, definerelexpArgs); 166 201 PXOPT_ADD_MODE("-updaterelexp", "update a released exposure", RELEASETOOL_MODE_UPDATERELEXP, updaterelexpArgs); 167 202 PXOPT_ADD_MODE("-listrelexp", "list released exposures", RELEASETOOL_MODE_LISTRELEXP, listrelexpArgs); 203 204 PXOPT_ADD_MODE("-definerelstack", "define a released stack", RELEASETOOL_MODE_DEFINERELSTACK, definerelstackArgs); 205 168 206 169 207 if (!pxGetOptions(stderr, argc, argv, config, modes, argSets)) {
Note:
See TracChangeset
for help on using the changeset viewer.
