Index: trunk/Nebulous-Server/lib/Nebulous/Server/SQL.pm
===================================================================
--- trunk/Nebulous-Server/lib/Nebulous/Server/SQL.pm	(revision 19959)
+++ trunk/Nebulous-Server/lib/Nebulous/Server/SQL.pm	(revision 20017)
@@ -1,5 +1,5 @@
 # Copyright (c) 2004  Joshua Hoblitt
 #
-# $Id: SQL.pm,v 1.66 2008-10-07 21:53:21 jhoblitt Exp $
+# $Id: SQL.pm,v 1.67 2008-10-09 20:23:30 jhoblitt Exp $
 
 package Nebulous::Server::SQL;
@@ -498,11 +498,13 @@
     DECLARE xattrvar BOOLEAN;
     DECLARE trans_level VARCHAR(255);
-    DECLARE cur1 CURSOR FOR SELECT vol_id, name, host, path, allocate, available, xattr FROM v;
+    DECLARE cur1 CURSOR FOR SELECT vol_id, name, host, path, allocate, available, xattr FROM myvolume;
     DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = TRUE;
 
-    CREATE OR REPLACE ALGORITHM = TEMPTABLE VIEW v AS SELECT * FROM volume;
+--   SET FOREIGN_KEY_CHECKS=0;
+
+    CREATE TEMPORARY TABLE myvolume LIKE volume;
+
     -- store the current transaction level
 --    SELECT @@session.tx_isolation INTO trans_level; 
-
     -- set trans level to repeatable-read so the volume table does not change
     -- out from under our cursor
@@ -534,5 +536,8 @@
 --    SET @@session.tx_isolation = trans_level;
 
-    DROP VIEW v;
+    DROP TABLE IF EXISTS myvolume;
+
+--    SET FOREIGN_KEY_CHECKS=1;
+
     COMMIT;
 END 
