Index: /trunk/dbconfig/changes.txt
===================================================================
--- /trunk/dbconfig/changes.txt	(revision 26445)
+++ /trunk/dbconfig/changes.txt	(revision 26446)
@@ -1434,4 +1434,7 @@
 UPDATE dbversion set schema_version = '1.1.57',  updated= CURRENT_TIMESTAMP();
 
+ALTER TABLE receiveSource add column state varchar (64) after workdir;
+UPDATE receiveSource SET state = 'enabled';
+
 -- Vesion 1.1.58
 -- UPDATE dbversion set schema_version = '1.1.58',  updated= CURRENT_TIMESTAMP();
@@ -1479,2 +1482,9 @@
 
 UPDATE dbversion set schema_version = '1.1.61',  updated= CURRENT_TIMESTAMP();
+
+ALTER TABLE magicDSFile ADD COLUMN streak_frac FLOAT AFTER recovery_path_base;
+ALTER TABLE magicDSFile ADD COLUMN total_time FLOAT AFTER streak_frac;
+
+ALTER TABLE receiveSource ADD COLUMN state VARCHAR(64) AFTER workdir;
+
+UPDATE dbversion set schema_version = '1.1.62',  updated= CURRENT_TIMESTAMP();
Index: /trunk/dbconfig/magic.md
===================================================================
--- /trunk/dbconfig/magic.md	(revision 26445)
+++ /trunk/dbconfig/magic.md	(revision 26446)
@@ -69,4 +69,6 @@
     backup_path_base  STR         255
     recovery_path_base STR        255
+    streak_frac F32         0
+    run_time    F32         0
     fault       S16         0
     data_state  STR        64     # Key
Index: /trunk/dbconfig/receive.md
===================================================================
--- /trunk/dbconfig/receive.md	(revision 26445)
+++ /trunk/dbconfig/receive.md	(revision 26446)
@@ -6,4 +6,5 @@
 	product		STR	64	# Key
 	workdir		STR	255
+        state           STR     64
 	comment		STR	255	# Key
 	fileset_last	STR	128
Index: /trunk/ippTools/share/pxadmin_create_tables.sql
===================================================================
--- /trunk/ippTools/share/pxadmin_create_tables.sql	(revision 26445)
+++ /trunk/ippTools/share/pxadmin_create_tables.sql	(revision 26446)
@@ -1181,4 +1181,6 @@
     backup_path_base VARCHAR(255),
     recovery_path_base VARCHAR(255),
+    streak_frac FLOAT,
+    run_time FLOAT,
     fault SMALLINT,
     data_state VARCHAR(64),
@@ -1428,4 +1430,5 @@
     product VARCHAR(64) NOT NULL, -- product of interest
     workdir VARCHAR(255) NOT NULL, -- where to extract
+    state VARCHAR(64) NOT NULL, -- state 'enabled' or 'disabled'
     comment VARCHAR(255),       -- for human memory
     fileset_last VARCHAR(128),  -- last fileset seen
Index: /trunk/ippTools/share/receivetool_list.sql
===================================================================
--- /trunk/ippTools/share/receivetool_list.sql	(revision 26445)
+++ /trunk/ippTools/share/receivetool_list.sql	(revision 26446)
@@ -1,2 +1,3 @@
 SELECT *
 FROM receiveSource
+WHERE receiveSource.state = 'enabled'
Index: /trunk/ippTools/share/receivetool_pendingfile.sql
===================================================================
--- /trunk/ippTools/share/receivetool_pendingfile.sql	(revision 26445)
+++ /trunk/ippTools/share/receivetool_pendingfile.sql	(revision 26446)
@@ -18,5 +18,6 @@
     ON receiveResult.file_id = receiveFile.file_id
 WHERE
-    ((receiveFileset.state = 'new')
+    receiveSource.state = 'enabled'
+    AND ((receiveFileset.state = 'new')
     OR (receiveFileset.state = 'listed' AND receiveFile.component = 'dirinfo' AND receiveFileset.dirinfo IS NULL))
     AND receiveFileset.fault = 0
Index: /trunk/ippTools/share/receivetool_pendingfileset.sql
===================================================================
--- /trunk/ippTools/share/receivetool_pendingfileset.sql	(revision 26445)
+++ /trunk/ippTools/share/receivetool_pendingfileset.sql	(revision 26446)
@@ -1,7 +1,11 @@
-SELECT *
+SELECT receiveFileset.*,
+    receiveSource.source,
+    receiveSource.product,
+    receiveSource.workdir
 FROM receiveFileset
 JOIN receiveSource USING(source_id)
 LEFT JOIN receiveFile USING(fileset_id)
-WHERE receiveFileset.state = 'reg'
+WHERE receiveSource.state = 'enabled'
+    AND receiveFileset.state = 'reg'
     AND receiveFileset.fault = 0
     AND receiveFile.fileset_id IS NULL
Index: /trunk/ippTools/share/receivetool_toadvance.sql
===================================================================
--- /trunk/ippTools/share/receivetool_toadvance.sql	(revision 26445)
+++ /trunk/ippTools/share/receivetool_toadvance.sql	(revision 26446)
@@ -10,5 +10,6 @@
     JOIN receiveFile USING(fileset_id)
     LEFT JOIN receiveResult USING(file_id)
-WHERE receiveFileset.state = 'new' 
+WHERE receiveSource.state = 'enabled'
+    AND receiveFileset.state = 'new' 
     AND receiveFileset.fault = 0
 GROUP BY fileset_id 
Index: /trunk/ippconfig/recipes/ppStatsFromMetadata.config
===================================================================
--- /trunk/ippconfig/recipes/ppStatsFromMetadata.config	(revision 26445)
+++ /trunk/ippconfig/recipes/ppStatsFromMetadata.config	(revision 26446)
@@ -403,11 +403,11 @@
   ENTRY MULTI
   TYPE   VAL  KEYWORD             TYPE STATISTIC         FLAG 
-  ENTRY  VAL  MASKED_FRACTION     F64  CONSTANT          -masked_frac # fraction of pixels masked by streaks
-  ENTRY  VAL  TOTAL_TIME          F64  CONSTANT          -run_time    # total run time for streaksremove
+  ENTRY  VAL  STREAK_FRACTION     F32  CONSTANT          -streak_frac # fraction of pixels masked by streaks
+  ENTRY  VAL  TOTAL_TIME          F32  CONSTANT          -run_time    # total run time for streaksremove
 
   # The following timers are included in the stats not saved in the datbase
-# ENTRY  VAL  GET_STREAK_PIXELS   F64  CONSTANT          -dtime_compute_masked  # time to compute list of streak pixels
-# ENTRY  VAL  REMOVE_STREAKS      F64  CONSTANT          -dtime_remove # time to mask the pixels
-# ENTRY  VAL  WRITE_IMAGES        F64  CONSTANT          -dtime_write  # time to write out the results
-# ENTRY  VAL  REPLICATE_OUTPUTS   F64  CONSTANT          -dtime_replicate  # time to replicate the outputs
-END
+# ENTRY  VAL  GET_STREAK_PIXELS   F32  CONSTANT          -dtime_compute_masked  # time to compute list of streak pixels
+# ENTRY  VAL  REMOVE_STREAKS      F32  CONSTANT          -dtime_remove # time to mask the pixels
+# ENTRY  VAL  WRITE_IMAGES        F32  CONSTANT          -dtime_write  # time to write out the results
+# ENTRY  VAL  REPLICATE_OUTPUTS   F32  CONSTANT          -dtime_replicate  # time to replicate the outputs
+END
Index: /trunk/magic/remove/src/streaksremove.c
===================================================================
--- /trunk/magic/remove/src/streaksremove.c	(revision 26445)
+++ /trunk/magic/remove/src/streaksremove.c	(revision 26446)
@@ -83,5 +83,5 @@
         }
         psF64 cdp_t = psTimerClear("COMPUTE_DIFFED_PIXELS");
-        psMetadataAddF64(sfiles->stats, PS_LIST_TAIL, "COMPUTE_UNDIFFED_PIXELS", PS_META_REPLACE, "time to compute non-diffedpixels", cdp_t);
+        psMetadataAddF32(sfiles->stats, PS_LIST_TAIL, "COMPUTE_UNDIFFED_PIXELS", PS_META_REPLACE, "time to compute non-diffedpixels", cdp_t);
         psLogMsg("streaksremove", PS_LOG_INFO, "time to compute diffed pixels: %f\n", cdp_t);
     }
@@ -139,5 +139,5 @@
                                                         sfiles->inImage->numRows);
             gsp_t +=  psTimerClear("GET_STREAK_PIXELS");
-            psMetadataAddF64(sfiles->stats, PS_LIST_TAIL, "GET_STREAK_PIXELS", PS_META_REPLACE, "", gsp_t);
+            psMetadataAddF32(sfiles->stats, PS_LIST_TAIL, "GET_STREAK_PIXELS", PS_META_REPLACE, "", gsp_t);
             psLogMsg("streaksremove", PS_LOG_INFO, "time to get streak pixels: %f\n", psTimerClear("GET_STREAK_PIXELS"));
 
@@ -153,5 +153,5 @@
 
                     enw_t +=  psTimerClear("EXCISE_NON_DIFFED");
-                    psMetadataAddF64(sfiles->stats, PS_LIST_TAIL, "EXCISE_NON_DIFFED", PS_META_REPLACE, "", enw_t);
+                    psMetadataAddF32(sfiles->stats, PS_LIST_TAIL, "EXCISE_NON_DIFFED", PS_META_REPLACE, "", enw_t);
                     psLogMsg("streaksremove", PS_LOG_INFO, "time to excise non diffed pixels: %f\n", enw_t);
                 }
@@ -162,5 +162,5 @@
 
                 rms_t += psTimerClear("REMOVE_STREAKS");
-                psMetadataAddF64(sfiles->stats, PS_LIST_TAIL, "REMOVE_STREAKS", PS_META_REPLACE, "", enw_t);
+                psMetadataAddF32(sfiles->stats, PS_LIST_TAIL, "REMOVE_STREAKS", PS_META_REPLACE, "", enw_t);
                 psLogMsg("streaksremove", PS_LOG_INFO, "time to remove streak pixels: %f\n", rms_t);
 
@@ -188,5 +188,5 @@
         censorSources(sfiles, sfiles->maskStreak);
         cs_t += psTimerClear("CENSOR_SOURCES");
-        psMetadataAddF64(sfiles->stats, PS_LIST_TAIL, "CENSOR_SOURCES", PS_META_REPLACE, "", cs_t);
+        psMetadataAddF32(sfiles->stats, PS_LIST_TAIL, "CENSOR_SOURCES", PS_META_REPLACE, "", cs_t);
 
 
@@ -195,5 +195,5 @@
         writeImages(sfiles, exciseImageCube);
         wi_t += psTimerClear("WRITE_IMAGES");
-        psMetadataAddF64(sfiles->stats, PS_LIST_TAIL, "WRITE_IMAGES", PS_META_REPLACE, "", wi_t);
+        psMetadataAddF32(sfiles->stats, PS_LIST_TAIL, "WRITE_IMAGES", PS_META_REPLACE, "", wi_t);
 
         psLogMsg("streaksremove", PS_LOG_INFO, "time to process component %d: %f\n", sfiles->extnum, psTimerClear("PROCESS_COMPONENT"));
@@ -207,7 +207,7 @@
     }
 
-    psF64 maskedFraction = totalStreakPixels / totalPixels;
-    psLogMsg("streaksremove", PS_LOG_INFO, "pixels: %ld streak pixels: %ld %4.2f%%\n", totalPixels, totalStreakPixels, maskedFraction * 100);
-    psMetadataAddF64(sfiles->stats, PS_LIST_TAIL, "MASKED_FRACTION", PS_META_REPLACE, "", maskedFraction);
+    psF64 streakFraction = totalStreakPixels / totalPixels;
+    psLogMsg("streaksremove", PS_LOG_INFO, "pixels: %ld streak pixels: %ld %4.2f%%\n", totalPixels, totalStreakPixels, streakFraction * 100);
+    psMetadataAddF32(sfiles->stats, PS_LIST_TAIL, "STREAK_FRACTION", PS_META_REPLACE, "", streakFraction);
 
     // check the weight and mask files for extra extensions that might be in files
@@ -220,5 +220,5 @@
     closeImages(sfiles);
     psF64 ci_t = psTimerClear("CLOSE_IMAGES");
-    psMetadataAddF64(sfiles->stats, PS_LIST_TAIL, "CLOSE_IMAGES", PS_META_REPLACE, "", ci_t);
+    psMetadataAddF32(sfiles->stats, PS_LIST_TAIL, "CLOSE_IMAGES", PS_META_REPLACE, "", ci_t);
 
     psLogMsg("streaksremove", PS_LOG_INFO, "time to close images: %f\n", ci_t);
@@ -231,5 +231,5 @@
     }
     psF64 ro_t = psTimerClear("REPLICATE_OUTPUTS");
-    psMetadataAddF64(sfiles->stats, PS_LIST_TAIL, "REPLICATE_OUTPUTS", PS_META_REPLACE, "", ro_t);
+    psMetadataAddF32(sfiles->stats, PS_LIST_TAIL, "REPLICATE_OUTPUTS", PS_META_REPLACE, "", ro_t);
 
     // NOTE: from here on we can't just quit if something goes wrong.
@@ -253,9 +253,9 @@
         }
         psF64 si_t = psTimerClear("SWAP_INSTANCES");
-        psMetadataAddF64(sfiles->stats, PS_LIST_TAIL, "SWAP_INSTANCES", PS_META_REPLACE, "", si_t);
+        psMetadataAddF32(sfiles->stats, PS_LIST_TAIL, "SWAP_INSTANCES", PS_META_REPLACE, "", si_t);
     }
 
     psF64 total_time = psTimerClear("TOTAL_TIME");
-    psMetadataAddF64(sfiles->stats, PS_LIST_TAIL, "TOTAL_TIME", PS_META_REPLACE, "", total_time);
+    psMetadataAddF32(sfiles->stats, PS_LIST_TAIL, "TOTAL_TIME", PS_META_REPLACE, "", total_time);
     psLogMsg("streaksremove", PS_LOG_INFO, "time to run streaksremove: %f\n", total_time);
 
@@ -424,5 +424,5 @@
         psArgumentRemove(argnum, &argc, argv);
         double transparentStreaks = atof(argv[argnum]);
-        psMetadataAddF64(config->arguments, PS_LIST_TAIL, "TRANSPARENT_STREAKS", 0,
+        psMetadataAddF32(config->arguments, PS_LIST_TAIL, "TRANSPARENT_STREAKS", 0,
             "value to adjust excised pixels", transparentStreaks);
         psArgumentRemove(argnum, &argc, argv);
