IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 42837 for trunk/ippTools


Ignore:
Timestamp:
May 9, 2025, 9:40:41 AM (14 months ago)
Author:
eugene
Message:

add support for xcstack, xcsky, xcff; update create (pxadmin) to be consistent with gpc1/gpc2; remove pstamp tables from pxadmin (not in gpc1/gpc2 db); fix a minor bug in addtool w.r.t. minidvodb_path; add -simple option to disttool; add updatesummitExp mode

Location:
trunk/ippTools
Files:
15 edited
56 copied

Legend:

Unmodified
Added
Removed
  • trunk/ippTools

  • trunk/ippTools/share

  • trunk/ippTools/share/Makefile.am

    r42480 r42837  
    554554        fpcamtool_queue_cam_id.sql \
    555555        fpcamtool_revertprocessedexp.sql \
    556         fpcamtool_revertupdatedexp.sql
    557 
     556        fpcamtool_revertupdatedexp.sql \
     557        xcstacktool_definebyquery_select.sql \
     558        xcstacktool_definebyquery_select_XC.sql \
     559        xcstacktool_addbyquery_select.sql \
     560        xcstacktool_addcamera.sql \
     561        xcstacktool_inputskyfile.sql \
     562        xcstacktool_tosum.sql \
     563        xcstacktool_sumskyfile.sql \
     564        xcstacktool_revertsumskyfile_delete.sql \
     565        xcstacktool_pendingcleanuprun.sql \
     566        xcstacktool_pendingcleanupskyfile.sql \
     567        xcstacktool_donecleanup.sql \
     568        xcskytool_definebyquery_select.sql \
     569        xcskytool_definebyquery_select_by_dg.sql \
     570        xcskytool_definebyquery_inputs.sql \
     571        xcskytool_definexccalrun.sql \
     572        xcskytool_pendingxccalrun.sql \
     573        xcskytool_revertxccal.sql \
     574        xcskytool_xccalresult.sql \
     575        xcskytool_export_run.sql \
     576        xcskytool_export_input.sql \
     577        xcskytool_export_result.sql \
     578        xcskytool_export_xccalrun.sql \
     579        xcskytool_export_xccalresult.sql \
     580        xcskytool_inputs.sql \
     581        xcskytool_todo.sql \
     582        xcskytool_result.sql \
     583        xcskytool_revert.sql \
     584        xcskytool_revert_update.sql \
     585        xcfftool_definebyquery_pt1.sql \
     586        xcfftool_definebyquery_pt2.sql \
     587        xcfftool_definebyquery_select_warps.sql \
     588        xcfftool_result.sql \
     589        xcfftool_revert.sql \
     590        xcfftool_revertsummary.sql \
     591        xcfftool_summaryinputs.sql \
     592        xcfftool_summary.sql \
     593        xcfftool_toadvance.sql \
     594        xcfftool_todo.sql
  • trunk/ippTools/share/pxadmin_create_tables.sql

    r42387 r42837  
    394394    KEY(fault),
    395395    KEY(quality),
    396     KEY(data_state),
    397396    FOREIGN KEY(chip_id, exp_id) REFERENCES chipRun(chip_id, exp_id),
    398397    FOREIGN KEY(exp_id, class_id) REFERENCES rawImfile(exp_id, class_id)
     
    558557    minidvodb_group VARCHAR(64),
    559558    minidvodb_name VARCHAR(64),
     559    minidvodb_host VARCHAR(64),
    560560    PRIMARY KEY(add_id),
    561561    KEY(add_id),
     
    14141414) ENGINE=innodb DEFAULT CHARSET=latin1;
    14151415
    1416 CREATE TABLE pstampDataStore (
    1417         ds_id BIGINT AUTO_INCREMENT,
    1418         state VARCHAR(64),
    1419         lastFileset VARCHAR(64),
    1420         timestamp  DATETIME,
    1421         label VARCHAR(64),
    1422         outProduct VARCHAR(64) UNIQUE,
    1423         uri VARCHAR(255),
    1424         pollInterval INTEGER DEFAULT 60,
    1425         need_magic TINYINT,
    1426         PRIMARY KEY(ds_id),
    1427         KEY(ds_id)
    1428 ) ENGINE=innodb DEFAULT CHARSET=latin1;
    1429 
    1430 CREATE TABLE pstampProject (
    1431         proj_id BIGINT AUTO_INCREMENT,
    1432         name VARCHAR(64) UNIQUE,
    1433         state VARCHAR(64),
    1434         dbname VARCHAR(64),
    1435         dvodb VARCHAR(64),
    1436         camera VARCHAR(64),
    1437         telescope VARCHAR(64),
    1438         need_magic TINYINT,
    1439         PRIMARY KEY(proj_id),
    1440         KEY(proj_id)
    1441 ) ENGINE=innodb DEFAULT CHARSET=latin1;
    1442 
    1443 CREATE TABLE pstampRequest (
    1444         req_id BIGINT AUTO_INCREMENT,
    1445         ds_id BIGINT,
    1446         state VARCHAR(64),
    1447         name VARCHAR(64) UNIQUE,
    1448         reqType VARCHAR(16),
    1449         label VARCHAR(64),
    1450         outProduct VARCHAR(64),
    1451         uri VARCHAR(255),
    1452         outdir VARCHAR(255),
    1453         username VARCHAR(255),
    1454         proj_id BIGINT,
    1455         registered datetime,
    1456         timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    1457         fault SMALLINT,
    1458         PRIMARY KEY(req_id),
    1459         KEY(req_id),
    1460         KEY(state),
    1461         KEY(fault),
    1462         KEY(label),
    1463         KEY(username)
    1464 ) ENGINE=innodb DEFAULT CHARSET=latin1;
    1465 
    1466 CREATE TABLE pstampJob (
    1467         job_id BIGINT AUTO_INCREMENT,
    1468         req_id BIGINT,
    1469         rownum VARCHAR(64),
    1470         state VARCHAR(64),
    1471         jobType VARCHAR(16),
    1472         fault SMALLINT,
    1473         exp_id BIGINT,
    1474         outputBase VARCHAR(255),
    1475         options BIGINT,
    1476         dep_id BIGINT,
    1477         fault_count INT,
    1478         parent_id BIGINT DEFAULT NULL,
    1479         is_parent TINYINT DEFAULT 0,
    1480         PRIMARY KEY(job_id, req_id),
    1481         KEY(job_id),
    1482         KEY(req_id),
    1483         KEY(state),
    1484         KEY(fault),
    1485         KEY(dep_id),
    1486         KEY(parent_id),
    1487         KEY(is_parent),
    1488         FOREIGN KEY(req_id) REFERENCES pstampRequest(req_id)
    1489 ) ENGINE=innodb DEFAULT CHARSET=latin1;
    1490 
    1491 CREATE TABLE pstampDependent (
    1492         dep_id BIGINT AUTO_INCREMENT,
    1493         state      VARCHAR(64),
    1494         stage      VARCHAR(64),
    1495         stage_id   BIGINT,
    1496         component  VARCHAR(64),
    1497         imagedb    VARCHAR(64),
    1498         outdir     VARCHAR(255),
    1499         rlabel     VARCHAR(64),
    1500         need_magic TINYINT,
    1501         fault      SMALLINT,
    1502         fault_count INT,
    1503         PRIMARY KEY(dep_id),
    1504         KEY(state),
    1505         KEY(stage),
    1506         KEY(stage_id),
    1507         KEY(component),
    1508         KEY(imagedb),
    1509         KEY(fault)
    1510 ) ENGINE=innodb DEFAULT CHARSET=latin1;
    1511 
    1512 CREATE TABLE pstampFile (
    1513     file_id BIGINT AUTO_INCREMENT,
    1514     job_id BIGINT NOT NULL,
    1515     path VARCHAR(255),
    1516     PRIMARY KEY(file_id),
    1517     KEY(job_id)
    1518 ) ENGINE=innodb DEFAULT CHARSET=latin1;
    1519 
    1520 CREATE TABLE pstampUserDomain (
    1521     domainName      VARCHAR(64),
    1522     accessLevel     INT,
    1523     defaultProduct  VARCHAR(255),
    1524     defaultLabel    VARCHAR(64),
    1525     PRIMARY KEY(domainName)
    1526 ) ENGINE=innodb DEFAULT CHARSET=latin1;
    1527 
    1528 CREATE TABLE pstampUser (
    1529     userName        VARCHAR(64),
    1530     domainName      VARCHAR(64),
    1531     accessLevel     INT,
    1532     defaultProduct  VARCHAR(255),
    1533     defaultLabel    VARCHAR(64),
    1534     PRIMARY KEY (userName, domainName)
    1535 ) ENGINE=innodb DEFAULT CHARSET=latin1;
    1536 
    1537 CREATE TABLE pstampAccessLevel (
    1538     proj_id         BIGINT,
    1539     accessLevel     INT,
    1540     mjd_min         FLOAT DEFAULT 0,
    1541     mjd_max         FLOAT DEFAULT 0,
    1542     PRIMARY KEY (proj_id, accessLevel),
    1543     UNIQUE KEY (proj_id, accessLevel),
    1544     FOREIGN KEY(proj_id) REFERENCES pstampProject(proj_id)
    1545 ) ENGINE=innodb DEFAULT CHARSET=latin1;
    1546 
    1547 CREATE TABLE pstampWebRequest (
    1548         num BIGINT AUTO_INCREMENT,
    1549         PRIMARY KEY(num)
    1550 ) ENGINE=innodb DEFAULT CHARSET=latin1;
    1551 
    15521416CREATE TABLE distTarget (
    15531417    target_id   BIGINT AUTO_INCREMENT,
     
    18561720    class_id VARCHAR(64) NOT NULL,     -- class (component) identifier
    18571721    path_base VARCHAR(255) NOT NULL,   -- root name for outputs
     1722    data_state VARCHAR(64),   
    18581723    magicked BIGINT,                   -- magic_id if magicked
    18591724    dtime_script FLOAT,                -- elapsed time for script
     
    19051770    skycell_id VARCHAR(64) NOT NULL,   -- skycell identifier
    19061771    path_base VARCHAR(255) NOT NULL,   -- root name for outputs
     1772    data_state VARCHAR(64),
    19071773    magicked BIGINT,                   -- magic_id if magicked
    19081774    dtime_script FLOAT,                -- elapsed time for script
     
    20221888       minidvodb_group VARCHAR(64) NOT NULL,
    20231889       minidvodb_path VARCHAR(255) NOT NULL,
     1890       minidvodb_host VARCHAR(64) NOT NULL,
    20241891       state VARCHAR(64) NOT NULL,
     1892       note VARCHAR(255) NOT NULL,
    20251893       creation_date TIMESTAMP,
    20261894       PRIMARY KEY(minidvodb_id), KEY(minidvodb_name), INDEX(minidvodb_id)
     
    21682036      quality SMALLINT NOT NULL,
    21692037      hostname VARCHAR(64) NOT NULL,
    2170       software_ver VARCHAR(64),
     2038      software_ver VARCHAR(16),
    21712039      fault SMALLINT NOT NULL,
    21722040      PRIMARY KEY(skycal_id),
     
    24812349) ENGINE=innodb DEFAULT CHARSET=latin1;
    24822350
     2351CREATE TABLE xcstackCamera (
     2352        camera_id BIGINT AUTO_INCREMENT,
     2353        camera VARCHAR(255),
     2354        PRIMARY KEY(camera_id)
     2355) ENGINE=innodb DEFAULT CHARSET=latin1;
     2356
     2357CREATE TABLE xcstackRun (
     2358        xcstack_id BIGINT AUTO_INCREMENT,
     2359        state VARCHAR(64),
     2360        workdir VARCHAR(255),
     2361        label VARCHAR(64),
     2362        data_group VARCHAR(64),
     2363        dist_group VARCHAR(64),
     2364        reduction VARCHAR(64),
     2365        registered DATETIME,
     2366        skycell_id VARCHAR(64),
     2367        tess_id VARCHAR(64),
     2368        filter VARCHAR(64),
     2369        software_ver VARCHAR(16),
     2370        note VARCHAR(255),
     2371        PRIMARY KEY(xcstack_id),
     2372        KEY(xcstack_id),
     2373        KEY(state),
     2374        KEY(skycell_id),
     2375        KEY(tess_id),
     2376        KEY(label),
     2377        KEY(data_group),
     2378        KEY(dist_group)
     2379) ENGINE=innodb DEFAULT CHARSET=latin1;
     2380
     2381CREATE TABLE xcstackInputSkyfile (
     2382        xcstack_id BIGINT,
     2383        camera_id BIGINT,
     2384        stack_id BIGINT,
     2385        PRIMARY KEY(xcstack_id, camera_id, stack_id),
     2386        KEY(xcstack_id),
     2387        KEY(stack_id),
     2388        FOREIGN KEY(xcstack_id) REFERENCES xcstackRun(xcstack_id),
     2389        FOREIGN KEY(camera_id) REFERENCES xcstackCamera(camera_id)
     2390) ENGINE=innodb DEFAULT CHARSET=latin1;
     2391
     2392CREATE TABLE xcstackSumSkyfile (
     2393        xcstack_id BIGINT,
     2394        path_base VARCHAR(255),
     2395        bg DOUBLE,
     2396        bg_stdev DOUBLE,
     2397        dtime_stack FLOAT,
     2398        dtime_script FLOAT,
     2399        hostname VARCHAR(64),
     2400        good_frac FLOAT,
     2401        fault SMALLINT,
     2402        software_ver VARCHAR(16),
     2403        quality SMALLINT NOT NULL DEFAULT 0,
     2404        PRIMARY KEY(xcstack_id),
     2405        KEY(dtime_stack),
     2406        KEY(good_frac),
     2407        KEY(fault),
     2408        KEY(quality),
     2409        FOREIGN KEY(xcstack_id) REFERENCES xcstackRun(xcstack_id)
     2410) ENGINE=innodb DEFAULT CHARSET=latin1;
     2411
     2412-- A static sky analysis set
     2413CREATE TABLE xcskyRun (
     2414      xcsky_id BIGINT AUTO_INCREMENT, -- unique identifier
     2415      state VARCHAR(64) NOT NULL,  -- state of run (new, full, etc.)
     2416      workdir VARCHAR(255) NOT NULL, -- working directory
     2417      label VARCHAR(64),             -- processing label
     2418      data_group VARCHAR(64),        -- group for data
     2419      dist_group VARCHAR(64),        -- group for distribution
     2420      reduction VARCHAR(64),         -- reduction class (for altering recipe)
     2421      note VARCHAR(255),             -- note
     2422      registered TIMESTAMP DEFAULT CURRENT_TIMESTAMP, -- time run was registered
     2423      PRIMARY KEY(xcsky_id),
     2424      KEY(state),
     2425      KEY(label),
     2426      KEY(data_group),
     2427      KEY(dist_group)
     2428) ENGINE=innodb DEFAULT CHARSET=latin1;
     2429
     2430-- Inputs for static sky analysis
     2431CREATE TABLE xcskyInput (
     2432      xcsky_id BIGINT,             -- static sky identifier
     2433      xcstack_id BIGINT,          -- stack identifier
     2434      PRIMARY KEY(xcsky_id,xcstack_id),
     2435      KEY(xcstack_id),
     2436      FOREIGN KEY(xcsky_id) REFERENCES xcskyRun(xcsky_id),
     2437      FOREIGN KEY(xcstack_id) REFERENCES xcstackRun(xcstack_id)
     2438) ENGINE=innodb DEFAULT CHARSET=latin1;
     2439
     2440-- Result of static sky analysis
     2441CREATE TABLE xcskyResult (
     2442      xcsky_id BIGINT,             -- static sky identifier
     2443      path_base VARCHAR(255) NOT NULL, -- root name for outputs
     2444      dtime_phot FLOAT,                -- elapsed time for photometry
     2445      dtime_script FLOAT,              -- elapsed time for script
     2446      sources INT,                     -- number of sources
     2447      num_inputs INT,                  -- number of input images
     2448      hostname VARCHAR(64) NOT NULL,   -- host that executed script
     2449      good_frac FLOAT,                 -- good fraction of skycell
     2450      quality SMALLINT NOT NULL,       -- bad quality flag
     2451      fault SMALLINT NOT NULL,         -- fault code
     2452      PRIMARY KEY(xcsky_id),
     2453      KEY(good_frac),
     2454      KEY(fault),
     2455      KEY(quality),
     2456      FOREIGN KEY(xcsky_id) REFERENCES xcskyRun(xcsky_id)
     2457) ENGINE=innodb DEFAULT CHARSET=latin1;
     2458
     2459CREATE TABLE xccalRun (
     2460      xccal_id BIGINT AUTO_INCREMENT, -- unique identifier
     2461      xcsky_id BIGINT,
     2462      xcstack_id BIGINT,
     2463      state VARCHAR(64) NOT NULL,  -- state of run (new, full, etc.)
     2464      workdir VARCHAR(255) NOT NULL, -- working directory
     2465      label VARCHAR(64),             -- processing label
     2466      data_group VARCHAR(64),        -- group for data
     2467      dist_group VARCHAR(64),        -- group for distribution
     2468      reduction VARCHAR(64),         -- reduction class (for altering recipe)
     2469      registered TIMESTAMP DEFAULT CURRENT_TIMESTAMP, -- time run was registered
     2470      note VARCHAR(255),             -- note
     2471      PRIMARY KEY(xccal_id),
     2472      KEY(state),
     2473      KEY(label),
     2474      KEY(data_group),
     2475      KEY(dist_group),
     2476      KEY(xcsky_id),
     2477      KEY(xcstack_id),
     2478      FOREIGN KEY(xcsky_id) REFERENCES xcskyRun(xcsky_id),
     2479      FOREIGN KEY(xcstack_id) REFERENCES xcstackRun(xcstack_id)
     2480) ENGINE=innodb DEFAULT CHARSET=latin1;
     2481
     2482-- Result of sky calibration analysis
     2483CREATE TABLE xccalResult (
     2484      xccal_id BIGINT,
     2485      path_base VARCHAR(255) NOT NULL,
     2486      dtime_script FLOAT,
     2487      dtime_astrom FLOAT,
     2488      sigma_ra FLOAT,
     2489      sigma_dec FLOAT,
     2490      n_astrom INT,
     2491      n_detections INT,
     2492      n_extended INT,
     2493      n_forced INT,
     2494      zpt_obs FLOAT,
     2495      zpt_stdev FLOAT,
     2496      fwhm_major  FLOAT,
     2497      fwhm_minor  FLOAT,
     2498      quality SMALLINT NOT NULL,
     2499      hostname VARCHAR(64) NOT NULL,
     2500      software_ver VARCHAR(16),
     2501      fault SMALLINT NOT NULL,
     2502      PRIMARY KEY(xccal_id),
     2503      KEY(fault),
     2504      KEY(quality),
     2505      FOREIGN KEY(xccal_id) REFERENCES xccalRun(xccal_id)
     2506) ENGINE=innodb DEFAULT CHARSET=latin1;
     2507
     2508CREATE TABLE xcForceRun (
     2509    xcff_id         BIGINT NOT NULL AUTO_INCREMENT,
     2510    xccal_id        BIGINT, -- NOT a foreign key: reference to entry in xcamera db
     2511    sources_path_base VARCHAR(255),
     2512    state           VARCHAR(64),
     2513    workdir         VARCHAR(255),
     2514    label           VARCHAR(64),
     2515    skycell_id      VARCHAR(64),
     2516    tess_id         VARCHAR(64),
     2517    data_group      VARCHAR(64),
     2518    dist_group      VARCHAR(64),
     2519    note            VARCHAR(255),
     2520    reduction       VARCHAR(64),
     2521    registered TIMESTAMP DEFAULT CURRENT_TIMESTAMP, -- time run was registered
     2522    PRIMARY KEY(xcff_id),
     2523    KEY(state),
     2524    KEY(label),
     2525    KEY(data_group),
     2526    KEY(xccal_id)
     2527) ENGINE=innodb DEFAULT CHARSET=latin1;
     2528
     2529CREATE TABLE xcForceInput (
     2530    xcff_id              BIGINT,
     2531    warp_id              BIGINT,
     2532    camera_id            BIGINT,
     2533    PRIMARY KEY(xcff_id, warp_id, camera_id),
     2534    FOREIGN KEY(xcff_id)   REFERENCES xcForceRun(xcff_id),
     2535    FOREIGN KEY(warp_id)   REFERENCES warpRun(warp_id),
     2536    FOREIGN KEY(camera_id) REFERENCES xcstackCamera(camera_id)
     2537) ENGINE=innodb DEFAULT CHARSET=latin1;
     2538
     2539CREATE TABLE xcForceResult (
     2540    xcff_id         BIGINT,
     2541    warp_id         BIGINT,
     2542    path_base       VARCHAR(255) NOT NULL,
     2543    dtime_script    FLOAT,
     2544    quality         SMALLINT NOT NULL,
     2545    hostname        VARCHAR(64) NOT NULL,
     2546    software_ver    VARCHAR(16),
     2547    fault           SMALLINT NOT NULL,
     2548    PRIMARY KEY(xcff_id, warp_id),
     2549    KEY(fault),
     2550    KEY(quality),
     2551    FOREIGN KEY(xcff_id) REFERENCES xcForceRun(xcff_id),
     2552    FOREIGN KEY(warp_id) REFERENCES warpRun(warp_id)
     2553) ENGINE=innodb DEFAULT CHARSET=latin1;
     2554
     2555CREATE TABLE xcForceSummary (
     2556    xcff_id         BIGINT,
     2557    path_base       VARCHAR(255) NOT NULL,
     2558    dtime_script    FLOAT,
     2559    quality         SMALLINT NOT NULL,
     2560    hostname        VARCHAR(64) NOT NULL,
     2561    software_ver    VARCHAR(16),
     2562    fault           SMALLINT NOT NULL,
     2563    PRIMARY KEY(xcff_id),
     2564    KEY(fault),
     2565    KEY(quality),
     2566    FOREIGN KEY(xcff_id) REFERENCES xcForceRun(xcff_id)
     2567) ENGINE=innodb DEFAULT CHARSET=latin1;
     2568
    24832569-- These comment lines are here to avoid an empty query error.
    24842570-- Another way to avoid that problem is to omit the semicolon above but I think that is untidy.
  • trunk/ippTools/share/pxadmin_drop_tables.sql

    r42387 r42837  
    131131DROP TABLE IF EXISTS fpcamProcessedExp;
    132132DROP TABLE IF EXISTS fpcamRun;
     133DROP TABLE IF EXISTS xccalResult;
     134DROP TABLE IF EXISTS xccalRun;
     135DROP TABLE IF EXISTS xcForceInput;
     136DROP TABLE IF EXISTS xcForceResult;
     137DROP TABLE IF EXISTS xcForceRun;
     138DROP TABLE IF EXISTS xcForceSummary;
     139DROP TABLE IF EXISTS xcskyInput;
     140DROP TABLE IF EXISTS xcskyResult;
     141DROP TABLE IF EXISTS xcskyRun;
     142DROP TABLE IF EXISTS xcstackCamera;
     143DROP TABLE IF EXISTS xcstackInputSkyfile;
     144DROP TABLE IF EXISTS xcstackRun;
     145DROP TABLE IF EXISTS xcstackSumSkyfile;
    133146
    134147SET FOREIGN_KEY_CHECKS=1
  • trunk/ippTools/src

  • trunk/ippTools/src/Makefile.am

    r42387 r42837  
    2424        stacktool \
    2525        staticskytool \
     26        xcstacktool \
     27        xcskytool \
     28        xcfftool \
    2629        warptool \
    2730        receivetool \
     
    8285        regtool.h \
    8386        stacktool.h \
     87        xcstacktool.h \
     88        xcskytool.h \
     89        xcfftool.h \
    8490        staticskytool.h \
    8591        warptool.h \
     
    245251    staticskytoolConfig.c
    246252
     253xcstacktool_CFLAGS = $(PSLIB_CFLAGS) $(PSMODULES_CFLAGS) $(IPPDB_CFLAGS)
     254xcstacktool_LDADD = $(PSLIB_LIBS) $(PSMODULES_LIBS) $(IPPDB_LIBS) libpxtools.la
     255xcstacktool_SOURCES = \
     256    xcstacktool.c \
     257    xcstacktoolConfig.c
     258
     259xcskytool_CFLAGS = $(PSLIB_CFLAGS) $(PSMODULES_CFLAGS) $(IPPDB_CFLAGS)
     260xcskytool_LDADD = $(PSLIB_LIBS) $(PSMODULES_LIBS) $(IPPDB_LIBS) libpxtools.la
     261xcskytool_SOURCES = \
     262    xcskytool.c \
     263    xcskytoolConfig.c
     264
     265xcfftool_CFLAGS = $(PSLIB_CFLAGS) $(PSMODULES_CFLAGS) $(IPPDB_CFLAGS)
     266xcfftool_LDADD = $(PSLIB_LIBS) $(PSMODULES_LIBS) $(IPPDB_LIBS) libpxtools.la
     267xcfftool_SOURCES = \
     268    xcfftool.c \
     269    xcfftoolConfig.c
     270
    247271pxadmin_CFLAGS = $(PSLIB_CFLAGS) $(PSMODULES_CFLAGS) $(IPPDB_CFLAGS)
    248272pxadmin_LDADD = $(PSLIB_LIBS) $(PSMODULES_LIBS) $(IPPDB_LIBS) libpxtools.la
  • trunk/ippTools/src/addtool.c

    r42712 r42837  
    16941694  // required
    16951695  PXOPT_LOOKUP_STR(minidvodb_group, config->args, "-set_minidvodb_group", true, false);
    1696   PXOPT_LOOKUP_STR(minidvodb_path, config->args, "-set_minidvodb_path", false, false);
     1696  PXOPT_LOOKUP_STR(minidvodb_path_raw, config->args, "-set_minidvodb_path", false, false);
    16971697  PXOPT_LOOKUP_STR(minidvodb_host, config->args, "-set_minidvodb_host", false, false);
    16981698  //optional
    1699   PXOPT_LOOKUP_STR(minidvodb_name, config->args, "-set_minidvodb_name", false, false);
     1699  PXOPT_LOOKUP_STR(minidvodb_name_raw, config->args, "-set_minidvodb_name", false, false);
    17001700  PXOPT_LOOKUP_STR(state, config->args, "-set_state", false, false);
    17011701  PXOPT_LOOKUP_STR(note,            config->args, "-set_note",            false, false);
     
    17061706  }
    17071707
    1708 //  psString minidvodbpath = "NULL";
    1709 
    1710   // I don't know how to get around the complaints of minidvodb_path can't be null. this 'fixes' it, but someone smarter can fix it properly.
    1711 //  if (minidvodb_path) {
    1712 //    minidvodbpath = minidvodb_path;
    1713 //  } else {
    1714 //    psError(PS_ERR_UNKNOWN, false, "require minidvodb_path");
    1715 //    return false;
    1716 //  }
    1717  
    17181708  if (!minidvodbRunInsert(config->dbh,
    17191709                          0, // job_id
    1720                           minidvodb_name,
     1710                          minidvodb_name_raw,
    17211711                          minidvodb_group,
    1722                           minidvodb_path,
     1712                          minidvodb_path_raw,
    17231713                          minidvodb_host,
    17241714                          "new",
     
    17411731  printf("%" PRId64 "\n", minidvodb_id);
    17421732
    1743  
    1744   if (!minidvodb_name) {
    1745     psStringAppend(&minidvodb_name, "%s.%" PRIu64,minidvodb_group,minidvodb_id);
    1746   }
    1747   if (minidvodb_path) {
    1748     psStringAppend(&minidvodb_path,"/%s",minidvodb_name);
    1749   }
    1750 
    1751   psString query = NULL;
    1752 
    1753   psStringAppend(&query, "UPDATE minidvodbRun SET minidvodb_path = '%s', minidvodb_name = '%s' where minidvodb_id = %" PRIu64";", minidvodb_path, minidvodb_name, minidvodb_id);
    1754 
    1755   if (!p_psDBRunQuery(config->dbh, query)) {
    1756     psError(PS_ERR_UNKNOWN, false, "database error");
    1757     psFree(query);
    1758     return false;
    1759   }
    1760 
    1761   if (!psDBCommit(config->dbh)) {
    1762     psError(PS_ERR_UNKNOWN, false, "database error");
    1763     return false;
    1764   }
     1733  // we created a new entry using the values supplied above for minidvodb_name_raw, minidvodb_host_raw.
     1734  // If minidvodb_name is not specified, it will be generated based on the value of minidvodb_group and
     1735  // the minidvodb_id of the new entry.  But this means we need to insert first, get the ID, then update.
     1736
     1737  bool doUpdate = false;
     1738
     1739  // Below: note that minidvodb_name_raw and minidvodb_path_raw are stored on config->args
     1740  // we need to work with a temporary external variable to avoid changing entries on the MD
     1741
     1742  // if minidvodb_name_raw is not specified above, create it from minidvodb_group
     1743  psString minidvodb_name = NULL;
     1744  if (minidvodb_name_raw) {
     1745    minidvodb_name = psStringCopy (minidvodb_name_raw);
     1746  } else {
     1747    psStringAppend(&minidvodb_name, "%s.%" PRIu64, minidvodb_group, minidvodb_id);
     1748    doUpdate = true;
     1749  }
     1750
     1751  // if minidvodb_path_raw IS specified above, update it with the minidvodb_name
     1752  psString minidvodb_path = NULL;
     1753  if (minidvodb_path_raw) {
     1754    psStringAppend(&minidvodb_path, "%s/%s", minidvodb_path_raw, minidvodb_name);
     1755    doUpdate = true;
     1756  }
     1757
     1758  if (doUpdate) {
     1759    psString query = NULL;
     1760
     1761    psStringAppend(&query, "UPDATE minidvodbRun SET minidvodb_path = '%s', minidvodb_name = '%s' where minidvodb_id = %" PRIu64";", minidvodb_path, minidvodb_name, minidvodb_id);
     1762
     1763    if (!p_psDBRunQuery(config->dbh, query)) {
     1764      psError(PS_ERR_UNKNOWN, false, "database error");
     1765      psFree(query);
     1766      return false;
     1767    }
     1768
     1769    if (!psDBCommit(config->dbh)) {
     1770      psError(PS_ERR_UNKNOWN, false, "database error");
     1771      return false;
     1772    }
     1773  }
     1774
     1775  psFree (minidvodb_name);
     1776  psFree (minidvodb_path);
    17651777
    17661778  return true;
  • trunk/ippTools/src/disttool.c

    r37130 r42837  
    765765    }
    766766
    767     if (simple) {/* no option? */}
    768 
    769767    if (pretend) {
    770         if (!ippdbPrintMetadatas(stdout, output, "distRunsToUpdate", true)) {
     768        if (!ippdbPrintMetadatas(stdout, output, "distRunsToUpdate", !simple)) {
    771769            psError(PS_ERR_UNKNOWN, false, "failed to print array");
    772770            psFree(output);
     
    16521650    PXOPT_LOOKUP_STR(state, config->args, "-set_state", false, false);
    16531651    PXOPT_LOOKUP_STR(comment, config->args, "-comment", false, false);
     1652    PXOPT_LOOKUP_BOOL(simple, config->args, "-simple", false);
    16541653
    16551654    distTargetRow *row = distTargetRowAlloc(
     
    16761675    row->target_id = psDBLastInsertID(config->dbh);
    16771676
    1678     if (!distTargetPrintObject(stdout, row, true)) {
     1677    if (!distTargetPrintObject(stdout, row, !simple)) {
    16791678            psError(PS_ERR_UNKNOWN, false, "failed to print object");
    16801679            psFree(row);
     
    18151814    PXOPT_LOOKUP_STR(last_fileset, config->args, "-last_fileset", false, false);
    18161815    PXOPT_LOOKUP_STR(state, config->args,        "-set_state", false, false);
     1816    PXOPT_LOOKUP_BOOL(simple, config->args,      "-simple", false);
    18171817
    18181818    // XXX: should we insure that these names do not contatin any whitespace?
     
    18421842    row->dest_id = psDBLastInsertID(config->dbh);
    18431843
    1844     if (!rcDestinationPrintObject(stdout, row, true)) {
     1844    if (!rcDestinationPrintObject(stdout, row, !simple)) {
    18451845        psError(PS_ERR_UNKNOWN, false, "failed to print object");
    18461846        psFree(row);
  • trunk/ippTools/src/disttoolConfig.c

    r37130 r42837  
    275275    psMetadataAddStr(definedestinationArgs, PS_LIST_TAIL, "-last_fileset",0, "define last_fileset", NULL);
    276276    psMetadataAddStr(definedestinationArgs, PS_LIST_TAIL, "-set_state",   0, "define state", NULL);
     277    psMetadataAddBool(definedestinationArgs, PS_LIST_TAIL, "-simple",  0, "use the simple output format", false);
    277278
    278279    // -updatedestination
     
    292293    psMetadataAddStr(definetargetArgs, PS_LIST_TAIL, "-set_state", 0, "define state", NULL);
    293294    psMetadataAddStr(definetargetArgs, PS_LIST_TAIL, "-comment",   0, "define comment", NULL);
     295    psMetadataAddBool(definetargetArgs, PS_LIST_TAIL, "-simple",  0, "use the simple output format", false);
    294296
    295297    // -updatetarget
  • trunk/ippTools/src/fftool.c

    r42480 r42837  
    104104}
    105105
    106 
     106// NOTE: this mode seems to be insufficiently constrained.  It first identifies the
     107// set of stackRun/skycalRun entries that lack a fullForceRun match.  But the
     108// second stage is selecting all warps only based on (tess_id, skycell_id, filter) without
     109// restriction to those which contributed to the stack
    107110static bool definebyqueryMode(pxConfig *config)
    108111{
     
    150153    }
    151154    PXOPT_COPY_F32(config->args, warpWhereMD, "-select_good_frac_min",  "warpSkyfile.good_frac",   ">=");
     155    // XXX the tess_id and filter below can never be used because they are removed above (for stack)
     156    // these options should be something like -select_warp_tess_id and -select_warp_filter
    152157    PXOPT_COPY_STR(config->args, warpWhereMD, "-select_tess_id",       "warpRun.tess_id",         "==");
    153158    pxAddLabelSearchArgs(config, warpWhereMD, "-select_filter",        "rawExp.filter",          "LIKE");
     
    223228    psString warpQueryTemplate = pxDataGet("fftool_definebyquery_select_warps.sql");
    224229
     230    // NOTE: these allow the set of input warps to be restricted
    225231    whereClause = psDBGenerateWhereConditionSQL(warpWhereMD, NULL);
    226232    psStringAppend(&warpQueryTemplate, "\nAND %s", whereClause);
     
    339345}
    340346
     347// NOTE: this mode and 'definebyquery' seem to be nearly identical except that
     348// 'definebyquery' allows for restrictions on the input warps by label, data_group,
     349// warp_id, tess_id, filter, good_frac
    341350static bool defineforstacksMode(pxConfig *config)
    342351{
  • trunk/ippTools/src/pztool.c

    r41598 r42837  
    5050static bool updatenewexpMode(pxConfig *config);
    5151
    52 // XXX EAM : 2021.05.18 : code for updatesummitExp was added but not finished.
    53 // XXX static bool updatesummitExpMode(pxConfig *config);
     52static bool updatesummitExpMode(pxConfig *config);
    5453
    5554// static bool copydoneCompleteExp(pxConfig *config);
     
    9392        MODECASE(PZTOOL_MODE_UPDATEPZEXP, updatepzexpMode);
    9493        MODECASE(PZTOOL_MODE_UPDATENEWEXP, updatenewexpMode);
    95         // XXX MODECASE(PZTOOL_MODE_UPDATESUMMITEXP, updatesummitExpMode);
     94        MODECASE(PZTOOL_MODE_UPDATESUMMITEXP, updatesummitExpMode);
    9695        default:
    9796            psAbort("invalid option (this should not happen)");
     
    810809}
    811810
    812 
    813811static bool updatecopiedMode(pxConfig *config)
    814812{
     
    939937}
    940938
    941 # if (0)
    942 static bool summitExpSetFault(pxConfig *config, const psS64 summit_id, const int fault)
     939static bool summitExpSetFault(pxConfig *config, const psString exp_name, const psS64 summit_id, const int fault)
    943940{
    944941    // check that state is a valid string value
     
    949946  }
    950947
    951     char *query = "UPDATE summitExp SET fault = %d WHERE summit_id = %ld";
    952     if (!p_psDBRunQueryF(config->dbh, query, fault, summit_id)) {
    953         psError(PS_ERR_UNKNOWN, false, "failed to change state for %lld", (long long) summit_id);
     948    char *query = "UPDATE summitExp SET fault = %d WHERE summit_id = %ld AND exp_name = '%s'";
     949    if (!p_psDBRunQueryF(config->dbh, query, fault, summit_id, exp_name)) {
     950        psError(PS_ERR_UNKNOWN, false, "failed to change state for %s = %lld", exp_name, (long long) summit_id);
    954951        return false;
    955952    }
     
    960957static bool updatesummitExpMode(pxConfig *config)
    961958{
    962   int fault;
    963 
     959  // require both exp_name and summit_id as a double-check
    964960  PS_ASSERT_PTR_NON_NULL(config, false);
    965961  PXOPT_LOOKUP_S64(summit_id, config->args, "-summit_id", true, false);
    966   PXOPT_LOOKUP_S32(state,    config->args, "-set_fault",true, false);
    967 
    968   if (!summitExpSetFault(config,summit_id, fault)) {
    969     psError(PS_ERR_UNKNOWN, false, "failed to change state for %lld", (long long) summit_id);
    970     return false;
     962  PXOPT_LOOKUP_STR(exp_name,  config->args, "-exp_name",  true, false);
     963  PXOPT_LOOKUP_S32(fault,     config->args, "-set_fault", true, false);
     964
     965  if (!summitExpSetFault(config, exp_name, summit_id, fault)) {
     966      psError(PS_ERR_UNKNOWN, false, "failed to change state for %s = %lld", exp_name, (long long) summit_id);
     967      return false;
    971968  }
    972969  return true;
    973970}
    974 # endif 
    975971 
    976972static bool updatepzexpMode(pxConfig *config)
  • trunk/ippTools/src/pztoolConfig.c

    r42254 r42837  
    171171    psMetadataAddStr(updatepzexpArgs, PS_LIST_TAIL, "-set_state",  0,            "define new state (required)", NULL);
    172172   
    173 # if (0)
    174173    // -updatesummitexp
    175174    psMetadata *updatesummitexpArgs = psMetadataAlloc();
    176175    psMetadataAddS64(updatesummitexpArgs, PS_LIST_TAIL, "-summit_id", 0,     "define summit_id", 0);
    177176    psMetadataAddStr(updatesummitexpArgs, PS_LIST_TAIL, "-exp_name",   0,            "search by exposure name (required)", NULL);
    178     psMetadataAddStr(updatesummitexpArgs, PS_LIST_TAIL, "-inst",       0,            "search by camera (required)", NULL);
    179     psMetadataAddStr(updatesummitexpArgs, PS_LIST_TAIL, "-telescope",  0,            "search by telescope (required)", NULL);
    180177    psMetadataAddS32(updatesummitexpArgs, PS_LIST_TAIL, "-set_fault",  0,            "define new fault (required)", 0);
    181 # endif
    182178   
    183179    // -updatenewexp
  • trunk/ippTools/src/stacktool.c

    r42097 r42837  
    496496            psFree(insert);
    497497            psFree(list);
    498             if (!psDBRollback(config->dbh)) {
    499                 psError(PS_ERR_UNKNOWN, false, "database error");
    500             }
    501498            return false;
    502499        }
  • trunk/ippTools/src/staticskytool.c

    r38561 r42837  
    10611061    PXOPT_COPY_S64(config->args, whereMD, "-select_sky_id",        "staticskyRun.sky_id",       "==");
    10621062    PXOPT_COPY_S64(config->args, whereMD, "-select_stack_id",      "stackRun.stack_id",         "==");
    1063     PXOPT_COPY_STR(config->args, whereMD, "-select_skycell_id",    "stackRun.skycell_id",       "==");
    10641063    PXOPT_COPY_STR(config->args, whereMD, "-select_tess_id",       "stackRun.tess_id",          "==");
     1064    PXOPT_COPY_STR(config->args, whereMD, "-select_skycell_id",    "stackRun.skycell_id",       "LIKE");
    10651065    pxAddLabelSearchArgs(config, whereMD, "-select_filter",        "stackRun.filter",           "LIKE");
    10661066    PXOPT_COPY_F32(config->args, whereMD, "-select_good_frac_min", "stackSumSkyfile.good_frac", ">=");
Note: See TracChangeset for help on using the changeset viewer.