IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 10216


Ignore:
Timestamp:
Nov 27, 2006, 7:22:23 PM (20 years ago)
Author:
jhoblitt
Message:

fix -toresidimfile & -addresidimfile for verify mode

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippTools/src/dettool.c

    r10206 r10216  
    32913291        "   rawImfile.class_id,\n"
    32923292        "   rawImfile.uri,\n"
    3293         "   rawImfile.uri AS det_uri,\n"
     3293        "   'NULL' AS det_uri,\n"
    32943294        "   rawDetrendExp.camera\n"
    32953295        " FROM detRun\n"
     
    33003300        " JOIN rawImfile\n"
    33013301        "    ON detInputExp.exp_tag = rawImfile.exp_tag\n"
    3302         " LEFT JOIN detProcessedImfile\n"
    3303         "   ON detInputExp.det_id = detProcessedImfile.det_id\n"
    3304         "   AND rawImfile.exp_tag = detProcessedImfile.exp_tag\n"
    3305         "   AND rawImfile.class_id = detProcessedImfile.class_id\n"
     3302        " LEFT JOIN detResidImfile\n"
     3303        "   ON detRun.det_id = detResidImfile.det_id\n"
     3304        "   AND detRun.iteration = detResidImfile.iteration\n"
     3305        "   AND rawImfile.exp_tag = detResidImfile.exp_tag\n"
     3306        "   AND rawImfile.class_id = detResidImfile.class_id\n"
    33063307        " WHERE\n"
    33073308        "   detRun.state = 'run'\n"
    33083309        "   AND detRun.mode = 'verify'\n"
    3309         "   AND detProcessedImfile.det_id IS NULL\n"
    3310         "   AND detProcessedImfile.exp_tag IS NULL\n"
    3311         "   AND detProcessedImfile.class_id IS NULL\n"
     3310        "   AND detResidImfile.det_id IS NULL\n"
     3311        "   AND detResidImfile.iteration IS NULL\n"
     3312        "   AND detResidImfile.exp_tag IS NULL\n"
     3313        "   AND detResidImfile.class_id IS NULL\n"
    33123314        );
    33133315
     
    34413443    // where det_id, iteration, class_id is not in detResidImfile
    34423444    psString query = psStringCopy(
     3445        " SELECT * FROM ("
    34433446        "SELECT\n"
    34443447        "   detNormalizedImfile.*\n"
     
    34603463        "  AND detResidImfile.exp_tag IS NULL\n"
    34613464        "  AND detResidImfile.class_id IS NULL\n"
    3462         "  %2$s"
    34633465        " UNION\n"
    34643466        " SELECT\n"
    34653467        "   detRun.det_id,\n"
    34663468        "   detRun.iteration,\n"
    3467         "   detProcessedImfile.class_id,\n"
    3468         "   detProcessedImfile.uri,\n"
    3469         "   detProcessedImfile.bg,\n"
    3470         "   detProcessedImfile.bg_stdev,\n"
    3471         "   detProcessedImfile.bg_mean_stdev,\n"
    3472         "   detProcessedImfile.b1_uri,\n"
    3473         "   detProcessedImfile.b2_uri\n"
     3469        "   rawImfile.class_id,\n"
     3470        "   rawImfile.uri,\n"
     3471        "   0.0 as bg,\n"
     3472        "   0.0 as bg_stdev,\n"
     3473        "   0.0 as bg_mean_stdev,\n"
     3474        "   'NULL' as b1_uri,\n"
     3475        "   'NULL' as b2_uri\n"
    34743476        " FROM detRun\n"
    34753477        " JOIN detInputExp\n"
    3476         "   USING(det_id, iteration)\n"
    3477         " JOIN detProcessedImfile\n"
    3478         "   ON detRun.det_id = detProcessedImfile.det_id\n"
    3479         "   AND detInputExp.exp_tag = detProcessedImfile.exp_tag\n"
     3478        "    USING(det_id, iteration)\n"
     3479        " JOIN rawDetrendExp\n"
     3480        "    ON detInputExp.exp_tag = rawDetrendExp.exp_tag\n"
     3481        " JOIN rawImfile\n"
     3482        "    ON detInputExp.exp_tag = rawImfile.exp_tag\n"
    34803483        " LEFT JOIN detResidImfile\n"
    34813484        "   ON detRun.det_id = detResidImfile.det_id\n"
    3482         "   AND detRun.iteration= detResidImfile.iteration\n"
    3483         "   AND detProcessedImfile.exp_tag = detResidImfile.exp_tag\n"
    3484         "   AND detProcessedImfile.class_id = detResidImfile.class_id\n"
     3485        "   AND detRun.iteration = detResidImfile.iteration\n"
     3486        "   AND rawImfile.exp_tag = detResidImfile.exp_tag\n"
     3487        "   AND rawImfile.class_id = detResidImfile.class_id\n"
    34853488        " WHERE\n"
    3486         "  detRun.state = 'run'\n"
    3487         "  AND detRun.mode= 'verify'\n"
    3488         "  AND detResidImfile.det_id IS NULL\n"
    3489         "  AND detResidImfile.iteration IS NULL\n"
    3490         "  AND detResidImfile.exp_tag IS NULL\n"
    3491         "  AND detResidImfile.class_id IS NULL\n"
    3492         "  AND detInputExp.exp_tag = '%1$s'\n"
    3493         "  %3$s"
     3489        "   detRun.state = 'run'\n"
     3490        "   AND detRun.mode = 'verify'\n"
     3491        "   AND detResidImfile.det_id IS NULL\n"
     3492        "   AND detResidImfile.iteration IS NULL\n"
     3493        "   AND detResidImfile.exp_tag IS NULL\n"
     3494        "   AND detResidImfile.class_id IS NULL\n"
     3495        "   AND detInputExp.exp_tag = '%1$s'\n"
     3496        ") AS foo\n"
     3497        "  %2$s"
    34943498    );
    34953499
     
    35123516        }
    35133517    }
     3518
    35143519    psS32 iteration = psMetadataLookupS32(&status, config->args, "-iteration");
    35153520    if (!status) {
     
    35263531        return false;
    35273532    }
     3533
    35283534    psString class_id = psMetadataLookupStr(&status, config->args, "-class_id");
    35293535    if (!status) {
     
    35423548    }
    35433549
    3544     psString masterClause = psDBGenerateWhereConditionSQL(where, "detNormalizedImfile");
    3545     psStringPrepend(&masterClause, "AND ");
    3546     psMetadataRemoveKey(where, "iteration");
    3547     psString verifyClause = psDBGenerateWhereConditionSQL(where, "detProcessedImfile");
    3548     psStringPrepend(&verifyClause, "AND ");
     3550    psString whereClause = psDBGenerateWhereSQL(where, NULL);
    35493551    psFree(where);
    35503552
    35513553    // exp_tag is manadatory to cross check that this is a exp_tag for this
    3552     // detRUn
     3554    // detRun
    35533555    psString exp_tag = psMetadataLookupStr(&status, config->args, "-exp_tag");
    35543556    if (!status) {
    35553557        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -exp_tag");
    3556         psFree(verifyClause);
    3557         psFree(masterClause);
     3558        psFree(whereClause);
    35583559        psFree(query);
    35593560        return false;
     
    35613562    if (!exp_tag) {
    35623563        psError(PS_ERR_UNKNOWN, true, "-exp_tag is required");
    3563         psFree(verifyClause);
    3564         psFree(masterClause);
     3564        psFree(whereClause);
    35653565        psFree(query);
    35663566        return false;
    35673567    }
    35683568
    3569     if (!p_psDBRunQuery(config->dbh, query, exp_tag, masterClause, verifyClause)) {
    3570         psError(PS_ERR_UNKNOWN, false, "database error");
    3571         psFree(verifyClause);
    3572         psFree(masterClause);
     3569    if (!p_psDBRunQuery(config->dbh, query, exp_tag, whereClause)) {
     3570        psError(PS_ERR_UNKNOWN, false, "database error");
     3571        psFree(whereClause);
    35733572        psFree(query);
    35743573        return false;
    35753574    }
    3576     psFree(verifyClause);
    3577     psFree(masterClause);
     3575    psFree(whereClause);
    35783576    psFree(query);
    35793577
Note: See TracChangeset for help on using the changeset viewer.