Index: branches/czw_branch/20100427/ippTools/share/Makefile.am
===================================================================
--- branches/czw_branch/20100427/ippTools/share/Makefile.am	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/Makefile.am	(revision 28017)
@@ -28,4 +28,5 @@
      chiptool_change_imfile_data_state.sql \
      chiptool_completely_processed_exp.sql \
+     chiptool_coalesce_run.sql \
      chiptool_definecopy.sql \
      chiptool_donecleanup.sql \
@@ -41,4 +42,5 @@
      chiptool_runstate.sql \
      chiptool_setimfiletoupdate.sql \
+     chiptool_export_run.sql \
      chiptool_export_imfile.sql \
      chiptool_export_processed_imfile.sql \
@@ -96,4 +98,5 @@
      difftool_change_run_state.sql \
      difftool_completed_runs.sql \
+     difftool_coalesce_run.sql \
      difftool_definewarpstack_part1.sql \
      difftool_definewarpstack_part2.sql \
@@ -114,5 +117,6 @@
      difftool_pendingcleanupskyfile.sql \
      difftool_revertdiffskyfile_delete.sql \
-     difftool_revertdiffskyfile_update.sql \
+     difftool_revertdiffskyfile_updated.sql \
+     difftool_setskyfiletoupdate.sql \
      difftool_skyfile.sql \
      difftool_todiffskyfile.sql \
@@ -196,4 +200,5 @@
      magictool_rawimfile.sql \
      magictool_revertnode.sql \
+     magictool_exposure.sql \
      magicdstool_clearstatefaults.sql \
      magicdstool_completed_runs.sql \
@@ -223,5 +228,7 @@
      pstamptool_completedreq.sql \
      pstamptool_datastore.sql \
+     pstamptool_getdependent.sql \
      pstamptool_listjob.sql \
+     pstamptool_pendingcleanup.sql \
      pstamptool_pendingdependent.sql \
      pstamptool_pendingjob.sql \
@@ -293,4 +300,5 @@
      warptool_finished_run_select.sql \
      warptool_finish_run.sql \
+     warptool_coalesce_run.sql \
      warptool_imfile.sql \
      warptool_listrun.sql \
Index: branches/czw_branch/20100427/ippTools/share/camtool_find_pendingexp.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/camtool_find_pendingexp.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/camtool_find_pendingexp.sql	(revision 28017)
@@ -10,5 +10,6 @@
     rawExp.telescope,
     rawExp.filelevel,
-    chipRun.magicked AS chip_magicked
+    chipRun.magicked AS chip_magicked,
+    camProcessedExp.path_base
 FROM camRun
 JOIN chipRun
Index: branches/czw_branch/20100427/ippTools/share/camtool_find_processedexp.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/camtool_find_processedexp.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/camtool_find_processedexp.sql	(revision 28017)
@@ -3,4 +3,5 @@
     camRun.workdir,
     camRun.label,
+    camRun.state,
     camRun.magicked,
     chipRun.chip_id,
Index: branches/czw_branch/20100427/ippTools/share/camtool_queue_chip_id.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/camtool_queue_chip_id.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/camtool_queue_chip_id.sql	(revision 28017)
@@ -17,4 +17,10 @@
         '%s',           -- end_stage
         %lld,           -- magicked
+	'%s',           -- software ver
+	'%s',           -- maskfrac_npix
+	'%s',           --         _static
+	'%s',           --         _dynamic
+	'%s',           --         _magic
+	'%s',           --         _advisory
         '%s'            -- note
     FROM chipRun
Index: branches/czw_branch/20100427/ippTools/share/chiptool_coalesce_run.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/chiptool_coalesce_run.sql	(revision 28017)
+++ branches/czw_branch/20100427/ippTools/share/chiptool_coalesce_run.sql	(revision 28017)
@@ -0,0 +1,1 @@
+select software_ver,maskfrac_npix,maskfrac_static,maskfrac_dynamic,maskfrac_magic,maskfrac_advisory from chipProcessedImfile where data_state = 'full' AND fault = 0 AND chip_id = %lld
Index: branches/czw_branch/20100427/ippTools/share/chiptool_listrun.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/chiptool_listrun.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/chiptool_listrun.sql	(revision 28017)
@@ -16,4 +16,8 @@
     rawExp.camera,
     rawExp.filter,
+    rawExp.dateobs,
+    rawExp.ra,
+    rawExp.decl,
+    rawExp.exp_time,
     rawExp.magicked AS raw_magicked,
     magicDSRun.state AS dsRun_state
Index: branches/czw_branch/20100427/ippTools/share/chiptool_pendingimfile.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/chiptool_pendingimfile.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/chiptool_pendingimfile.sql	(revision 28017)
@@ -10,5 +10,7 @@
     rawExp.camera,
     rawExp.telescope,
-    rawExp.filelevel
+    rawExp.filelevel,
+    IFNULL(Label.priority, 10000) AS priority,
+    chipProcessedImfile.path_base
 FROM chipRun
 JOIN rawExp
@@ -25,4 +27,5 @@
 LEFT JOIN chipMask
     ON chipRun.label = chipMask.label
+LEFT JOIN Label ON chipRun.label = Label.label
 WHERE
     ((chipRun.state = 'new'
@@ -35,2 +38,3 @@
     AND chipProcessedImfile.data_state = 'update'
     AND chipProcessedImfile.fault = 0))
+    AND (Label.active OR Label.active IS NULL)
Index: branches/czw_branch/20100427/ippTools/share/chiptool_processedimfile.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/chiptool_processedimfile.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/chiptool_processedimfile.sql	(revision 28017)
@@ -23,4 +23,8 @@
     rawExp.telescope,
     rawExp.filelevel,
+    rawExp.dateobs,
+    rawExp.ra,
+    rawExp.decl,
+    rawExp.exp_time,
     rawImfile.magicked AS raw_magicked,
     rawImfile.burntool_state,
Index: branches/czw_branch/20100427/ippTools/share/detselect_search.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/detselect_search.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/detselect_search.sql	(revision 28017)
@@ -27,3 +27,3 @@
     ) as Foo
 WHERE
-    (state = 'stop' OR state = 'register')
+    (state = 'stop')
Index: branches/czw_branch/20100427/ippTools/share/difftool_coalesce_run.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/difftool_coalesce_run.sql	(revision 28017)
+++ branches/czw_branch/20100427/ippTools/share/difftool_coalesce_run.sql	(revision 28017)
@@ -0,0 +1,1 @@
+select software_ver,maskfrac_npix,maskfrac_static,maskfrac_dynamic,maskfrac_magic,maskfrac_advisory from diffSkyfile where diff_id = %lld
Index: branches/czw_branch/20100427/ippTools/share/difftool_revertdiffskyfile_updated.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/difftool_revertdiffskyfile_updated.sql	(revision 28017)
+++ branches/czw_branch/20100427/ippTools/share/difftool_revertdiffskyfile_updated.sql	(revision 28017)
@@ -0,0 +1,6 @@
+UPDATE diffSkyfile
+    JOIN diffRun USING(diff_id)
+SET diffSkyfile.fault = 0
+WHERE diffRun.state = 'update'
+    AND diffSkyfile.data_state = 'update'
+    AND diffSkyfile.fault != 0
Index: branches/czw_branch/20100427/ippTools/share/difftool_setskyfiletoupdate.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/difftool_setskyfiletoupdate.sql	(revision 28017)
+++ branches/czw_branch/20100427/ippTools/share/difftool_setskyfiletoupdate.sql	(revision 28017)
@@ -0,0 +1,8 @@
+UPDATE diffRun
+    JOIN diffSkyfile USING(diff_id)
+SET diffRun.state = 'update', 
+    diffSkyfile.data_state = 'update'
+    -- set hook %s
+WHERE diff_id = %lld
+    AND (diffRun.state = 'cleaned' OR diffRun.state = 'update')
+    AND (diffSkyfile.data_state = 'cleaned')
Index: branches/czw_branch/20100427/ippTools/share/difftool_todiffskyfile.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/difftool_todiffskyfile.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/difftool_todiffskyfile.sql	(revision 28017)
@@ -12,5 +12,6 @@
     diffRun.reduction,
     diffRun.bothways,
-    diffRun.diff_mode
+    diffRun.diff_mode,
+    diffSkyfile.path_base
 FROM diffRun
 JOIN diffInputSkyfile USING(diff_id)
Index: branches/czw_branch/20100427/ippTools/share/magicdstool_todestreak_camera.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/magicdstool_todestreak_camera.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/magicdstool_todestreak_camera.sql	(revision 28017)
@@ -3,4 +3,5 @@
     magicDSRun.magic_id,
     chipRun.exp_id,
+    camRun.magicked,
     magicDSRun.label,
     camera,
Index: branches/czw_branch/20100427/ippTools/share/magicdstool_todestreak_chip.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/magicdstool_todestreak_chip.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/magicdstool_todestreak_chip.sql	(revision 28017)
@@ -3,4 +3,5 @@
     magicDSRun.magic_id,
     chipRun.exp_id,
+    chipRun.magicked,
     magicDSRun.label,
     camera,
Index: branches/czw_branch/20100427/ippTools/share/magicdstool_todestreak_diff.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/magicdstool_todestreak_diff.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/magicdstool_todestreak_diff.sql	(revision 28017)
@@ -10,4 +10,5 @@
     stage,
     magicRun.diff_id AS stage_id,
+    diffRun.magicked,
     diffSkyfile.skycell_id AS component,
     CAST(NULL AS CHAR(255)) AS uri,
@@ -47,13 +48,14 @@
     magicDSRun.label,
     rawExp.camera,
-    magicMask.uri as streaks_uri,
+    magicMask.uri AS streaks_uri,
     (SELECT uri from magicMask where magic_id = inv_magic_id) AS inv_streaks_uri,
     stage,
-    magicRun.diff_id as stage_id,
-    diffSkyfile.skycell_id as component,
+    magicRun.diff_id AS stage_id,
+    diffRun.magicked,
+    diffSkyfile.skycell_id AS component,
     CAST(NULL AS CHAR(255)) AS uri,
     diffSkyfile.path_base,
     magicRun.inverse,
-    CAST(NULL AS CHAR(255)) as cam_path_base,
+    CAST(NULL AS CHAR(255)) AS cam_path_base,
     CAST(NULL AS CHAR(255)) AS cam_reduction,
     outroot,
@@ -80,5 +82,5 @@
     AND diffSkyfile.quality = 0
     AND magicDSFile.component IS NULL
-) as magicDSRun
+) AS magicDSRun
 -- we need the following so this query is compatible with the other stages
 WHERE magic_ds_id IS NOT NULL
Index: branches/czw_branch/20100427/ippTools/share/magicdstool_todestreak_raw.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/magicdstool_todestreak_raw.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/magicdstool_todestreak_raw.sql	(revision 28017)
@@ -4,9 +4,10 @@
     magicRun.exp_id,
     magicDSRun.label,
-    camera,
+    rawExp.camera,
     magicMask.uri as streaks_uri,
     CAST(NULL AS CHAR(255)) AS inv_streaks_uri,
     stage,
     stage_id,
+    rawExp.magicked,
     class_id as component,
     rawImfile.uri AS uri,
@@ -25,5 +26,6 @@
 JOIN camRun USING(cam_id)
 JOIN camProcessedExp USING(cam_id)
-JOIN rawImfile ON magicRun.exp_id = rawImfile.exp_id
+JOIN rawExp ON magicRun.exp_id = rawExp.exp_id
+JOIN rawImfile ON rawExp.exp_id = rawImfile.exp_id
 LEFT JOIN magicDSFile
     ON magicDSRun.magic_ds_id = magicDSFile.magic_ds_id
Index: branches/czw_branch/20100427/ippTools/share/magicdstool_todestreak_warp.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/magicdstool_todestreak_warp.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/magicdstool_todestreak_warp.sql	(revision 28017)
@@ -9,4 +9,5 @@
     stage,
     stage_id,
+    warpRun.magicked,
     warpSkyfile.skycell_id as component,
     warpSkyfile.uri,
Index: branches/czw_branch/20100427/ippTools/share/magicdstool_torevert_camera.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/magicdstool_torevert_camera.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/magicdstool_torevert_camera.sql	(revision 28017)
@@ -13,5 +13,6 @@
     0 AS bothways,
     0 AS bytes,
-    0 AS md5sum
+    0 AS md5sum,
+    camRun.magicked
 FROM magicDSRun
     JOIN magicDSFile using(magic_ds_id)
Index: branches/czw_branch/20100427/ippTools/share/magicdstool_torevert_chip.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/magicdstool_torevert_chip.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/magicdstool_torevert_chip.sql	(revision 28017)
@@ -13,9 +13,12 @@
     0 AS bothways,
     0 AS bytes,
-    0 AS md5sum
+    0 AS md5sum,
+    chipRun.magicked
 FROM magicDSRun
     JOIN magicDSFile using(magic_ds_id)
     JOIN camProcessedExp using(cam_id)
-    JOIN chipProcessedImfile ON (stage_id = chipProcessedImfile.chip_id AND component = class_id)
+    JOIN chipRun ON (stage_id = chipRun.chip_id)
+    -- JOIN chipProcessedImfile ON (stage_id = chipProcessedImfile.chip_id AND component = class_id)
+    JOIN chipProcessedImfile USING(chip_id, exp_id)
     JOIN rawExp using(exp_id)
 WHERE magicDSRun.stage = 'chip'
Index: branches/czw_branch/20100427/ippTools/share/magicdstool_torevert_diff.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/magicdstool_torevert_diff.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/magicdstool_torevert_diff.sql	(revision 28017)
@@ -13,5 +13,6 @@
     CAST(diffRun.bothways AS SIGNED) AS bothways,
     0 AS bytes,
-    0 AS md5sum
+    0 AS md5sum,
+    diffRun.magicked
 FROM magicDSRun
     JOIN magicRun using(magic_id)
Index: branches/czw_branch/20100427/ippTools/share/magicdstool_torevert_raw.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/magicdstool_torevert_raw.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/magicdstool_torevert_raw.sql	(revision 28017)
@@ -10,8 +10,9 @@
     outroot,
     rawImfile.uri AS path_base,
-    NULL AS cam_path_base,
+    CAST(NULL AS CHAR(255)) AS cam_path_base, 
     0 AS bothways,
     bytes,
-    md5sum
+    md5sum,
+    0 AS magicked
 FROM magicDSRun
     JOIN magicDSFile using(magic_ds_id)
Index: branches/czw_branch/20100427/ippTools/share/magicdstool_torevert_warp.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/magicdstool_torevert_warp.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/magicdstool_torevert_warp.sql	(revision 28017)
@@ -13,5 +13,6 @@
     0 AS bothways,
     0 AS bytes,
-    0 AS md5sum
+    0 AS md5sum,
+    warpRun.magicked
 FROM magicDSRun
     JOIN magicDSFile USING(magic_ds_id)
Index: branches/czw_branch/20100427/ippTools/share/magictool_exposure.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/magictool_exposure.sql	(revision 28017)
+++ branches/czw_branch/20100427/ippTools/share/magictool_exposure.sql	(revision 28017)
@@ -0,0 +1,54 @@
+SELECT *
+FROM (
+    -- Forward diff
+    SELECT DISTINCT
+        magicRun.magic_id,
+        rawExp.*,
+        camProcessedExp.path_base,
+        camProcessedExp.zpt_obs,
+        camProcessedExp.zpt_stdev,
+        camProcessedExp.fwhm_major,
+        camProcessedExp.fwhm_minor,
+        camProcessedExp.iq_m2,
+        camProcessedExp.iq_m3,
+        camProcessedExp.iq_m4
+    FROM
+        magicRun
+    JOIN diffRun USING(diff_id)
+    JOIN diffInputSkyfile USING(diff_id)
+    LEFT JOIN warpRun
+        ON warpRun.warp_id = diffInputSkyfile.warp1
+        AND magicRun.inverse = 0
+    JOIN fakeRun USING(fake_id)
+    JOIN camRun USING(cam_id)
+    JOIN camProcessedExp USING(cam_id)
+    JOIN chipRun USING(chip_id,exp_id)
+    JOIN rawExp USING(exp_id)
+    -- WHERE hook %s
+    UNION
+    -- Backward diff
+    SELECT DISTINCT
+        magicRun.magic_id,
+        rawExp.*,
+        camProcessedExp.path_base,
+        camProcessedExp.zpt_obs,
+        camProcessedExp.zpt_stdev,
+        camProcessedExp.fwhm_major,
+        camProcessedExp.fwhm_minor,
+        camProcessedExp.iq_m2,
+        camProcessedExp.iq_m3,
+        camProcessedExp.iq_m4
+    FROM
+        magicRun
+    JOIN diffRun USING(diff_id)
+    JOIN diffInputSkyfile USING(diff_id)
+    LEFT JOIN warpRun
+        ON warpRun.warp_id = diffInputSkyfile.warp2
+        AND magicRun.inverse = 1
+    JOIN fakeRun USING(fake_id)
+    JOIN camRun USING(cam_id)
+    JOIN camProcessedExp USING(cam_id)
+    JOIN chipRun USING(chip_id,exp_id)
+    JOIN rawExp USING(exp_id)
+    -- WHERE hook %s
+) AS magicExposures
Index: branches/czw_branch/20100427/ippTools/share/pstamptool_completedreq.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/pstamptool_completedreq.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/pstamptool_completedreq.sql	(revision 28017)
@@ -1,4 +1,6 @@
-SELECT * 
+SELECT pstampRequest.* ,
+    IFNULL(Label.priority, 0) AS priority
 FROM pstampRequest 
+    LEFT JOIN Label USING(label) 
 WHERE state = 'run'
     AND (
Index: branches/czw_branch/20100427/ippTools/share/pstamptool_getdependent.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/pstamptool_getdependent.sql	(revision 28017)
+++ branches/czw_branch/20100427/ippTools/share/pstamptool_getdependent.sql	(revision 28017)
@@ -0,0 +1,5 @@
+SELECT DISTINCT pstampDependent.*
+FROM pstampDependent
+-- JOIN pstampJob USING(dep_id)
+-- JOIN pstampRequest USING(req_id)
+WHERE pstampDependent.state = 'new'
Index: branches/czw_branch/20100427/ippTools/share/pstamptool_pendingcleanup.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/pstamptool_pendingcleanup.sql	(revision 28017)
+++ branches/czw_branch/20100427/ippTools/share/pstamptool_pendingcleanup.sql	(revision 28017)
@@ -0,0 +1,9 @@
+-- postage stamp requests pending cleanup
+SELECT
+    pstampRequest.*,
+    IFNULL(Label.priority, 10000) AS priority
+FROM pstampRequest
+    LEFT JOIN Label ON pstampRequest.label = Label.label
+WHERE pstampRequest.state = 'goto_cleaned'
+    AND pstampRequest.fault = 0
+    AND (Label.active OR Label.active IS NULL)
Index: branches/czw_branch/20100427/ippTools/share/pstamptool_pendingdependent.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/pstamptool_pendingdependent.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/pstamptool_pendingdependent.sql	(revision 28017)
@@ -1,6 +1,12 @@
-SELECT DISTINCT pstampDependent.*
+SELECT DISTINCT
+    pstampDependent.*,
+    IFNULL(Label.priority, 10000) AS priority
 FROM pstampDependent
 JOIN pstampJob USING(dep_id)
 JOIN pstampRequest USING(req_id)
+LEFT JOIN Label ON pstampRequest.label = Label.label
 WHERE pstampDependent.state = 'new'
+    AND pstampDependent.fault = 0
     AND pstampJob.state = 'run'
+    AND (pstampRequest.state = 'run' OR pstampRequest.state = 'new')
+    AND (Label.active OR Label.active IS NULL)
Index: branches/czw_branch/20100427/ippTools/share/pstamptool_pendingjob.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/pstamptool_pendingjob.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/pstamptool_pendingjob.sql	(revision 28017)
@@ -1,6 +1,8 @@
-SELECT pstampJob.*
+SELECT pstampJob.*,
+    IFNULL(Label.priority, 10000) AS priority
 FROM pstampJob
     JOIN pstampRequest USING(req_id)
     LEFT JOIN pstampDependent USING(dep_id)
+    LEFT JOIN Label ON pstampRequest.label = Label.label
 WHERE pstampRequest.state = 'run'
     AND pstampRequest.fault = 0
@@ -8,2 +10,3 @@
     AND pstampJob.fault = 0
     AND (dep_id = 0 OR pstampDependent.state = 'full')
+    AND (Label.active OR Label.active IS NULL)
Index: branches/czw_branch/20100427/ippTools/share/pstamptool_pendingreq.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/pstamptool_pendingreq.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/pstamptool_pendingreq.sql	(revision 28017)
@@ -1,9 +1,11 @@
 -- postage stamp requests ready for download and parsing
 SELECT
- pstampRequest.*,
- pstampDataStore.outProduct as ds_outProduct
- FROM pstampRequest
- LEFT JOIN pstampDataStore
-    USING(ds_id)
- WHERE pstampRequest.state = 'new'
+    pstampRequest.*,
+    pstampDataStore.outProduct AS ds_outProduct,
+    IFNULL(Label.priority, 10000) AS priority
+FROM pstampRequest
+    LEFT JOIN pstampDataStore USING(ds_id)
+    LEFT JOIN Label ON pstampRequest.label = Label.label
+WHERE pstampRequest.state = 'new'
     AND pstampRequest.fault = 0
+    AND (Label.active OR Label.active IS NULL)
Index: branches/czw_branch/20100427/ippTools/share/pstamptool_revertdependent.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/pstamptool_revertdependent.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/pstamptool_revertdependent.sql	(revision 28017)
@@ -3,2 +3,3 @@
     JOIN pstampRequest USING(req_id)
 SET pstampDependent.fault = 0
+WHERE pstampDependent.state = 'new'
Index: branches/czw_branch/20100427/ippTools/share/pstamptool_updatejob.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/pstamptool_updatejob.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/pstamptool_updatejob.sql	(revision 28017)
@@ -1,3 +1,2 @@
 UPDATE pstampJob LEFT JOIN pstampDependent USING(dep_id)
-SET pstampJob.state = '%s'
-    -- set state hook %s
+SET 
Index: branches/czw_branch/20100427/ippTools/share/pxadmin_create_tables.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/pxadmin_create_tables.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/pxadmin_create_tables.sql	(revision 28017)
@@ -276,4 +276,10 @@
     end_stage VARCHAR(64),
     magicked BIGINT,
+    software_ver VARCHAR(16),
+    maskfrac_npix INT,
+    maskfrac_static FLOAT,
+    maskfrac_dynamic FLOAT,
+    maskfrac_magic FLOAT,
+    maskfrac_advisory FLOAT,
     note VARCHAR(255),
     PRIMARY KEY(chip_id),
@@ -359,4 +365,10 @@
     fault SMALLINT NOT NULL,
     magicked BIGINT,
+    software_ver VARCHAR(16),
+    maskfrac_npix INT,
+    maskfrac_static FLOAT,
+    maskfrac_dynamic FLOAT,
+    maskfrac_magic FLOAT,
+    maskfrac_advisory FLOAT,
     PRIMARY KEY(chip_id, exp_id, class_id),
     KEY(data_state),
@@ -387,4 +399,10 @@
     end_stage VARCHAR(64),
     magicked BIGINT,
+    software_ver VARCHAR(16),
+    maskfrac_npix INT,
+    maskfrac_static FLOAT,
+    maskfrac_dynamic FLOAT,
+    maskfrac_magic FLOAT,
+    maskfrac_advisory FLOAT,
     note VARCHAR(255),
     PRIMARY KEY(cam_id),
@@ -464,4 +482,10 @@
     quality SMALLINT NOT NULL DEFAULT 0,
     fault SMALLINT NOT NULL,
+    software_ver VARCHAR(16),
+    maskfrac_npix INT,
+    maskfrac_static FLOAT,
+    maskfrac_dynamic FLOAT,
+    maskfrac_magic FLOAT,
+    maskfrac_advisory FLOAT,
     PRIMARY KEY(cam_id),
     KEY(fault),
@@ -867,4 +891,10 @@
     registered DATETIME,
     magicked BIGINT,
+    software_ver VARCHAR(16),
+    maskfrac_npix INT,
+    maskfrac_static FLOAT,
+    maskfrac_dynamic FLOAT,
+    maskfrac_magic FLOAT,
+    maskfrac_advisory FLOAT,
     note VARCHAR(255),
     PRIMARY KEY(warp_id),
@@ -923,4 +953,10 @@
     fault SMALLINT,
     magicked BIGINT,
+    software_ver VARCHAR(16),
+    maskfrac_npix INT,
+    maskfrac_static FLOAT,
+    maskfrac_dynamic FLOAT,
+    maskfrac_magic FLOAT,
+    maskfrac_advisory FLOAT,
     PRIMARY KEY(warp_id, skycell_id, tess_id),
     KEY(good_frac),
@@ -948,4 +984,5 @@
         tess_id VARCHAR(64),
         filter VARCHAR(64),
+	software_ver VARCHAR(16),
         note VARCHAR(255),
         PRIMARY KEY(stack_id),
@@ -995,4 +1032,5 @@
         quality SMALLINT NOT NULL DEFAULT 0,
         fault SMALLINT,
+	software_ver VARCHAR(16),
         PRIMARY KEY(stack_id),
         KEY(dtime_stack),
@@ -1017,4 +1055,10 @@
         exposure TINYINT DEFAULT 0,
         magicked BIGINT,
+	software_ver VARCHAR(16),
+        maskfrac_npix INT,
+        maskfrac_static FLOAT,
+        maskfrac_dynamic FLOAT,
+        maskfrac_magic FLOAT,
+        maskfrac_advisory FLOAT,
         diff_mode SMALLINT NOT NULL,
         note VARCHAR(255),
@@ -1080,4 +1124,10 @@
         fault SMALLINT,
         magicked BIGINT,
+	software_ver VARCHAR(16),
+	maskfrac_npix INT,
+	maskfrac_static FLOAT,
+	maskfrac_dynamic FLOAT,
+	maskfrac_magic FLOAT,
+        maskfrac_advisory FLOAT,
         PRIMARY KEY(diff_id, skycell_id),
         KEY(good_frac),
@@ -1303,4 +1353,5 @@
         outProduct VARCHAR(64),
         uri VARCHAR(255),
+        outdir     VARCHAR(255),
         fault SMALLINT,
         PRIMARY KEY(req_id),
@@ -1332,4 +1383,5 @@
         imagedb    VARCHAR(64),
         rlabel     VARCHAR(64),
+        outdir     VARCHAR(255),
         need_magic TINYINT,
         PRIMARY KEY(dep_id),
@@ -1599,4 +1651,14 @@
 ) ENGINE=innodb DEFAULT CHARSET=latin1;
 
+CREATE TABLE Label (
+    label       VARCHAR(64),
+    priority    INT,
+    active      TINYINT,
+    comment     VARCHAR(80),
+    PRIMARY KEY(label),
+    KEY(priority),
+    KEY(active)
+) ENGINE=innodb DEFAULT CHARSET=latin1;
+
 -- This comment line is here to avoid empty query error.
 -- Another way to avoid that problem is to omit the semicolon above but I think that is untidy.
Index: branches/czw_branch/20100427/ippTools/share/pxadmin_drop_tables.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/pxadmin_drop_tables.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/pxadmin_drop_tables.sql	(revision 28017)
@@ -84,4 +84,5 @@
 DROP TABLE IF EXISTS staticskyResult;
 DROP TABLE IF EXISTS staticskyRun;
+DROP TABLE IF EXISTS Label;
 
 SET FOREIGN_KEY_CHECKS=1
Index: branches/czw_branch/20100427/ippTools/share/stacktool_tosum.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/stacktool_tosum.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/stacktool_tosum.sql	(revision 28017)
@@ -6,5 +6,6 @@
     stackRun.reduction,
     stackRun.label,
-    stackRun.state
+    stackRun.state,
+    stackSumSkyfile.path_base
 FROM stackRun
 JOIN stackInputSkyfile USING(stack_id)
@@ -16,3 +17,3 @@
     -- WHERE hook %s
 GROUP BY stack_id
-HAVING COUNT(warpRun.state = 'full') = COUNT(stackInputSkyfile.warp_id)
+HAVING SUM(IF(warpRun.state = 'full', 1, 0)) = COUNT(stackInputSkyfile.warp_id)
Index: branches/czw_branch/20100427/ippTools/share/warptool_coalesce_run.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/warptool_coalesce_run.sql	(revision 28017)
+++ branches/czw_branch/20100427/ippTools/share/warptool_coalesce_run.sql	(revision 28017)
@@ -0,0 +1,1 @@
+select software_ver,maskfrac_npix,maskfrac_static,maskfrac_dynamic,maskfrac_magic,maskfrac_advisory from warpSkyfile where warp_id = %lld
Index: branches/czw_branch/20100427/ippTools/share/warptool_listrun.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/warptool_listrun.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/warptool_listrun.sql	(revision 28017)
@@ -6,5 +6,9 @@
     rawExp.exp_name,
     rawExp.camera,
-    rawExp.filter
+    rawExp.filter,
+    rawExp.dateobs,
+    rawExp.ra,
+    rawExp.decl,
+    rawExp.exp_time
 FROM warpRun
 JOIN fakeRun
Index: branches/czw_branch/20100427/ippTools/share/warptool_towarped.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/warptool_towarped.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/warptool_towarped.sql	(revision 28017)
@@ -11,5 +11,6 @@
     exp_tag,
     workdir,
-    magicked
+    magicked,
+    path_base
 FROM (
     SELECT DISTINCT
@@ -25,5 +26,6 @@
         rawExp.exp_tag,
         warpRun.workdir,
-        chipRun.magicked
+        chipRun.magicked,
+        CAST(NULL AS CHAR(255)) AS path_base
     FROM warpRun
     JOIN warpSkyCellMap
@@ -73,5 +75,6 @@
         rawExp.exp_tag,
         warpRun.workdir,
-        MIN(chipProcessedImfile.magicked) AS magicked
+        MIN(chipProcessedImfile.magicked) AS magicked,
+        warpSkyfile.path_base
     FROM warpRun
     JOIN warpImfile USING(warp_id)
Index: branches/czw_branch/20100427/ippTools/share/warptool_warped.sql
===================================================================
--- branches/czw_branch/20100427/ippTools/share/warptool_warped.sql	(revision 27784)
+++ branches/czw_branch/20100427/ippTools/share/warptool_warped.sql	(revision 28017)
@@ -7,5 +7,10 @@
     rawExp.exp_id,
     rawExp.exp_name,
-    rawExp.camera
+    rawExp.camera,
+    rawExp.filter,
+    rawExp.dateobs,
+    rawExp.ra,
+    rawExp.decl,
+    rawExp.exp_time
 FROM warpRun
 JOIN warpSkyfile
