IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 14024


Ignore:
Timestamp:
Jul 5, 2007, 3:21:25 PM (19 years ago)
Author:
jhoblitt
Message:

merge regtool_find_unprocessed_exp.sql & regtool_pendingexp.sql

Location:
trunk/ippTools
Files:
1 deleted
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippTools/share/regtool_pendingexp.sql

    r14023 r14024  
    1 SELECT
    2     newExp.*
    3 FROM newExp
    4 JOIN newImfile
    5     USING(exp_id)
    6 LEFT JOIN rawExp
    7     USING(exp_id)
    8 WHERE
    9     newExp.state = 'run'
    10     AND rawExp.exp_id IS NULL
    11     AND newExp.imfiles =
    12     (SELECT COUNT(exp_id) FROM rawImfile
    13         WHERE
    14             rawImfile.exp_id = newExp.exp_id
    15             AND rawImfile.fault = 0)
     1SELECT DISTINCT * FROM
     2    (SELECT
     3       newExp.*
     4    FROM newExp
     5    JOIN newImfile
     6       USING(exp_id)
     7    LEFT JOIN rawExp
     8       USING(exp_id)
     9    WHERE
     10        newExp.state = 'run'
     11        AND rawExp.exp_id IS NULL
     12        AND newExp.imfiles =
     13        (SELECT COUNT(exp_id) FROM rawImfile
     14            WHERE rawImfile.exp_id = newExp.exp_id)) as Foo
  • trunk/ippTools/src/regtool.c

    r14023 r14024  
    533533    }
    534534
    535     psString query = pxDataGet("regtool_find_unprocessed_exp.sql");
     535    psString query = pxDataGet("regtool_pendingexp.sql");
    536536    if (!query) {
    537537        psError(PXTOOLS_ERR_DATA, false, "failed to retreive SQL statement");
     
    539539    }
    540540
    541     if (!p_psDBRunQuery(config->dbh, query, exp_id)) {
     541    {
     542        // build a query to search by exp_id
     543        psMetadata *where = psMetadataAlloc();
     544        bool status = false;
     545        psString exp_id = psMetadataLookupStr(&status, config->args, "-exp_id");
     546        if (!status) {
     547            psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -exp_id");
     548            psFree(query);
     549            return false;
     550        }
     551        if (exp_id) {
     552            if (!psMetadataAddStr(where, PS_LIST_TAIL, "exp_id", 0, "==", exp_id)) {
     553                psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id");
     554                psFree(where);
     555                psFree(query);
     556                return false;
     557            }
     558        }
     559
     560        psString whereClaus = psDBGenerateWhereSQL(where, NULL);
     561        psFree(where);
     562        if (whereClaus) {
     563            psStringAppend(&query, " %s", whereClaus);
     564            psFree(whereClaus);
     565        }
     566    }
     567
     568    if (!p_psDBRunQuery(config->dbh, query)) {
    542569        psError(PS_ERR_UNKNOWN, false, "database error");
    543570        psFree(query);
Note: See TracChangeset for help on using the changeset viewer.