Index: trunk/ippTools/share/pxadmin_create_tables.sql
===================================================================
--- trunk/ippTools/share/pxadmin_create_tables.sql	(revision 20841)
+++ trunk/ippTools/share/pxadmin_create_tables.sql	(revision 20973)
@@ -238,7 +238,10 @@
     fault SMALLINT NOT NULL,
     epoch TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
+    raw_image_id BIGINT AUTO_INCREMENT,
+    magicked TINYINT,
     PRIMARY KEY(exp_id, class_id),
     KEY(tmp_class_id),
     KEY(fault),
+    KEY(raw_image_id),
     UNIQUE KEY(exp_id, tmp_class_id),
     FOREIGN KEY (exp_id, tmp_class_id)
@@ -330,7 +333,10 @@
     path_base VARCHAR(255),
     fault SMALLINT NOT NULL,
+    chip_image_id BIGINT AUTO_INCREMENT,
+    magicked BIGINT,
     PRIMARY KEY(chip_id, exp_id, class_id),
     KEY(data_state),
     KEY(fault),
+    KEY(chip_image_id),
     FOREIGN KEY (chip_id, exp_id)
         REFERENCES  chipRun(chip_id, exp_id),
@@ -815,5 +821,4 @@
     end_stage VARCHAR(64),
     registered DATETIME,
-    magiced TINYINT,
     PRIMARY KEY(warp_id),
     KEY(warp_id),
@@ -824,5 +829,4 @@
     KEY(label),
     KEY(end_stage),
-    KEY(magiced),
     INDEX(warp_id, fake_id),
     FOREIGN KEY (fake_id)
@@ -861,7 +865,10 @@
     ignored TINYINT,
     fault SMALLINT,
+    warp_image_id BIGINT AUTO_INCREMENT,
+    magicked TINYINT,
     PRIMARY KEY(warp_id, skycell_id, tess_id),
     KEY(good_frac),
     KEY(ignored), KEY(fault),
+    KEY(warp_image_id),
     FOREIGN KEY (warp_id, skycell_id, tess_id)
         REFERENCES warpSkyCellMap(warp_id, skycell_id, tess_id)
@@ -941,34 +948,38 @@
         dvodb VARCHAR(255),
         registered DATETIME,
-        skycell_id VARCHAR(64),
         tess_id VARCHAR(64),
+        exp_id  BIGINT,
         PRIMARY KEY(diff_id),
         KEY(diff_id),
         KEY(state),
-        KEY(skycell_id),
-        KEY(tess_id)
+        KEY(tess_id),
+        FOREIGN KEY (exp_id) REFERENCES rawExp(exp_id)
 ) ENGINE=innodb DEFAULT CHARSET=latin1;
 
 CREATE TABLE diffInputSkyfile (
         diff_id BIGINT,
-        template TINYINT,
-        stack_id BIGINT,
-        warp_id BIGINT,
         skycell_id VARCHAR(64),
+        warp1 BIGINT,
+        stack1 BIGINT,
+        warp2 BIGINT,
+        stack2 BIGINT,
         tess_id VARCHAR(64),
-        kind VARCHAR(64),
-        PRIMARY KEY(diff_id, template),
-        KEY(stack_id),
-        KEY(warp_id),
+        PRIMARY KEY(diff_id, skycell_id),
+        KEY(warp1),
+        KEY(warp2),
+        KEY(stack1),
+        KEY(stack2),
         KEY(skycell_id),
         KEY(tess_id),
-        KEY(kind),
         FOREIGN KEY (diff_id)  REFERENCES  diffRun(diff_id),
-        FOREIGN KEY (stack_id)  REFERENCES  stackSumSkyfile(stack_id),
-        FOREIGN KEY (warp_id, skycell_id, tess_id)  REFERENCES  warpSkyfile(warp_id, skycell_id, tess_id)
+        FOREIGN KEY (warp1, skycell_id, tess_id)  REFERENCES  warpSkyfile(warp_id, skycell_id, tess_id),
+        FOREIGN KEY (warp2, skycell_id, tess_id)  REFERENCES  warpSkyfile(warp_id, skycell_id, tess_id),
+        FOREIGN KEY (stack1)  REFERENCES  stackSumSkyfile(stack_id),
+        FOREIGN KEY (stack2)  REFERENCES  stackSumSkyfile(stack_id)
 ) ENGINE=innodb DEFAULT CHARSET=latin1;
 
 CREATE TABLE diffSkyfile (
         diff_id BIGINT,
+        skycell_id VARCHAR(64),
         uri VARCHAR(255),
         path_base VARCHAR(255),
@@ -993,7 +1004,10 @@
         good_frac FLOAT,
         fault SMALLINT,
-        PRIMARY KEY(diff_id),
+        diff_image_id BIGINT AUTO_INCREMENT,
+        magicked TINYINT,
+        PRIMARY KEY(diff_id, skycell_id),
         KEY(good_frac),
         KEY(fault),
+        KEY(diff_image_id),
         FOREIGN KEY (diff_id)  REFERENCES  diffRun(diff_id)
 ) ENGINE=innodb DEFAULT CHARSET=latin1;
@@ -1002,4 +1016,5 @@
         magic_id BIGINT AUTO_INCREMENT,
         exp_id BIGINT,
+        diff_id BIGINT,
         state VARCHAR(64),
         workdir VARCHAR(255),
@@ -1015,5 +1030,6 @@
         KEY(label),
         KEY(fault),
-        FOREIGN KEY (exp_id)  REFERENCES  rawExp(exp_id)
+        FOREIGN KEY (exp_id)  REFERENCES rawExp(exp_id),
+        FOREIGN KEY (diff_id) REFERENCES diffRun(diff_id)
 ) ENGINE=innodb DEFAULT CHARSET=latin1;
 
@@ -1022,7 +1038,7 @@
         diff_id BIGINT,
         node VARCHAR(64),
-        PRIMARY KEY(magic_id, diff_id),
+        PRIMARY KEY(magic_id, diff_id, node),
         FOREIGN KEY (magic_id)  REFERENCES  magicRun(magic_id),
-        FOREIGN KEY (diff_id)  REFERENCES  diffRun(diff_id)
+        FOREIGN KEY (diff_id) REFERENCES diffRun(diff_id)
 ) ENGINE=innodb DEFAULT CHARSET=latin1;
 
