Index: trunk/ippTools/share/pxadmin_create_tables.sql
===================================================================
--- trunk/ippTools/share/pxadmin_create_tables.sql	(revision 23879)
+++ trunk/ippTools/share/pxadmin_create_tables.sql	(revision 23880)
@@ -1303,4 +1303,38 @@
 )  ENGINE=innodb DEFAULT CHARSET=latin1;
 
+-- Sources from which to receive files
+CREATE TABLE receiveSource (
+    source_id BIGINT AUTO_INCREMENT, -- unique identifier
+    source VARCHAR(128) NOT NULL, -- source URI
+    product VARCHAR(64) NOT NULL, -- product of interest
+    workdir VARCHAR(255),       -- where to extract (optional)
+    comment VARCHAR(255),       -- for human memory
+    fileset_last VARCHAR(128),  -- last fileset seen
+    PRIMARY KEY(source_id),
+    KEY(source),
+    KEY(product),
+    KEY(comment)
+) ENGINE=innodb DEFAULT CHARSET=latin1;
+
+-- Run for receiving files
+CREATE TABLE receiveRun (
+    receive_id BIGINT AUTO_INCREMENT, -- unique identifier
+    source_id BIGINT NOT NULL,  -- link to receiveSource
+    fileset VARCHAR(128) NOT NULL, -- fileset to receive
+    PRIMARY KEY(receive_id),
+    KEY(source_id),
+    FOREIGN KEY(source_id) REFERENCES receiveSource(source_id)
+) ENGINE=innodb DEFAULT CHARSET=latin1;
+
+-- Result of receiving files
+CREATE TABLE receiveResult (
+    receive_id BIGINT AUTO_INCREMENT, -- unique identifier, link to receiveRun
+    dtime_copy FLOAT,           -- Time to copy
+    dtime_extract FLOAT,        -- Time to extract
+    fault SMALLINT NOT NULL DEFAULT 0, -- Fault code
+    PRIMARY KEY(receive_id),
+    KEY(fault),
+    FOREIGN KEY(receive_id) REFERENCES receiveRun(receive_id)
+) ENGINE=innodb DEFAULT CHARSET=latin1;
 
 
Index: trunk/ippTools/share/receivetool_list.sql
===================================================================
--- trunk/ippTools/share/receivetool_list.sql	(revision 23880)
+++ trunk/ippTools/share/receivetool_list.sql	(revision 23880)
@@ -0,0 +1,2 @@
+SELECT *
+FROM receiveSource
Index: trunk/ippTools/share/receivetool_pendingrun.sql
===================================================================
--- trunk/ippTools/share/receivetool_pendingrun.sql	(revision 23880)
+++ trunk/ippTools/share/receivetool_pendingrun.sql	(revision 23880)
@@ -0,0 +1,5 @@
+SELECT *
+FROM receiveRun
+JOIN receiveSource USING(source_id)
+LEFT JOIN receiveResult USING(receive_id)
+WHERE receiveResult.receive_id IS NULL
Index: trunk/ippTools/share/receivetool_revert.sql
===================================================================
--- trunk/ippTools/share/receivetool_revert.sql	(revision 23880)
+++ trunk/ippTools/share/receivetool_revert.sql	(revision 23880)
@@ -0,0 +1,5 @@
+DELETE FROM receiveResult
+USING receiveResult, receiveRun, receiveSource
+WHERE receiveResult.receive_id = receiveRun.receive_id
+    AND receiveRun.source_id = receiveSource.source_id
+    AND fault != 0
