IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Nov 19, 2015, 11:22:36 AM (11 years ago)
Author:
eugene
Message:

diffSkyfile does not have diff_skyfile_id or tess_id in the true gpc1 schema; remove from the test schema; fix query for getDiffStagePathBase to just join on diffSkyfile and diffInputSkyfile using diff_id, skycell_id

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippToPsps/jython/gpc1db.py

    r39158 r39165  
    121121                   JOIN mergedvodbProcessed using (merge_id) \
    122122                   JOIN diffInputSkyfile \
    123                    ON (diff_id = stage_id AND diff_skyfile_id = stage_extra1 \
    124                    AND stage = 'diff') \
     123                   ON (diff_id = stage_id AND diff_skyfile_id = stage_extra1 AND stage = 'diff') \
    125124                   JOIN skycell using (skycell_id, tess_id) \
    126125                   JOIN warpRun on (warp1 = warp_id \
     
    308307                   JOIN mergedvodbProcessed using (merge_id) \
    309308                   JOIN diffInputSkyfile \
    310                    ON (diff_id = stage_id AND diff_skyfile_id = stage_extra1 \
    311                    AND stage = 'diff') \
     309                   ON (diff_id = stage_id AND diff_skyfile_id = stage_extra1 AND stage = 'diff') \
    312310                   JOIN skycell using (skycell_id, tess_id) \
    313311                   JOIN warpRun on (warp1 = warp_id \
     
    513511    get diff stage cmf name
    514512    '''
    515     def getDiffStagePathBase(self, dvoDb, diffSkyfileID):
     513    def getDiffStagePathBase(self, diffSkyfileID):
     514        sql = "SELECT DISTINCT diffSkyfile.path_base \
     515               FROM diffInputSkyfile \
     516               JOIN diffSkyfile using (diff_id, skycell_id) \
     517               WHERE diff_skyfile_id = " + str(diffSkyfileID)
     518
     519        rs = self.executeQuery(sql)
     520
     521        if not rs.first():
     522            self.logger.errorPair("missing cmf entry diff_skyfile_id:", str(diff_skyfile_id))
     523            # self.logger.errorPair("no diff cmfs found for diff_skyfile_id = %d" %diff_skyfile_id)
     524            return None
     525
     526        pathBase = rs.getString(1)
     527        return pathBase
     528
     529    '''
     530    get diff stage cmf name
     531    XXX EAM 20151119 : this function does too much work: you have a diffSkyfileID, that matches to a unique path_base
     532    '''
     533    def getDiffStagePathBaseOldVersion(self, dvoDb, diffSkyfileID):
    516534        print "got here, diffstagecmf"
    517535        sql = "SELECT DISTINCT diffSkyfile.path_base \
    518536               FROM mergedvodbRun join minidvodbRun using (minidvodb_id) \
    519537               JOIN addRun using (minidvodb_name) \
    520                JOIN diffInputSkyfile on (diff_skyfile_id = stage_extra1 \
    521                AND diff_id = stage_id AND stage = 'diff') \
    522                JOIN diffSkyfile using (diff_id, skycell_id, diff_skyfile_id) \
     538               JOIN diffInputSkyfile on (diff_skyfile_id = stage_extra1 AND diff_id = stage_id AND stage = 'diff') \
     539               JOIN diffSkyfile using (diff_id, skycell_id) \
    523540               WHERE diff_skyfile_id = " + str(diffSkyfileID) + " \
    524541               AND minidvodbRun.state = 'merged' \
     
    561578    '''
    562579    get diff stage cmf name
     580    XXX EAM 20151119 This function is broken AND it does too much work
    563581    '''
    564582    def getDiffStageCmf(self, dvoDb, diffSkyfileID):
Note: See TracChangeset for help on using the changeset viewer.