List:Commits« Previous MessageNext Message »
From:cbell Date:December 3 2007 8:28pm
Subject:bk commit into 6.0 tree (cbell:1.2714)
View as plain text  
Below is the list of changes that have just been committed into a local
6.0 repository of cbell. When cbell does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet@stripped, 2007-12-03 15:28:32-05:00, cbell@mysql_cab_desk. +24 -0
  Fix mysql-6.0-rpl-merge tree
  
  This patch repairs a number of defects for testing failures in pushbuild.

  mysql-test/r/backup.result@stripped, 2007-12-03 15:28:01-05:00, cbell@mysql_cab_desk. +5 -5
    Fix mysql-6.0-rpl-merge tree
    
    New result file.

  mysql-test/r/backup_commit_blocker.result@stripped, 2007-12-03 15:28:02-05:00, cbell@mysql_cab_desk. +73 -3
    Fix mysql-6.0-rpl-merge tree
    
    New result file.

  mysql-test/r/backup_ddl_blocker.result@stripped, 2007-12-03 15:28:02-05:00, cbell@mysql_cab_desk. +257 -5
    Fix mysql-6.0-rpl-merge tree
    
    New result file.

  mysql-test/r/backup_no_data.result@stripped, 2007-12-03 15:28:03-05:00, cbell@mysql_cab_desk. +1 -5
    Fix mysql-6.0-rpl-merge tree
    
    New result file.

  mysql-test/r/backup_no_engine.result@stripped, 2007-12-03 15:28:04-05:00, cbell@mysql_cab_desk. +2 -2
    Fix mysql-6.0-rpl-merge tree
    
    New result file.

  mysql-test/r/backup_progress.result@stripped, 2007-12-03 15:28:04-05:00, cbell@mysql_cab_desk. +1 -1
    Fix mysql-6.0-rpl-merge tree
    
    New result file.

  mysql-test/r/backup_security.result@stripped, 2007-12-03 15:28:05-05:00, cbell@mysql_cab_desk. +3 -1
    Fix mysql-6.0-rpl-merge tree
    
    New result file.

  mysql-test/t/backup.test@stripped, 2007-12-03 15:28:06-05:00, cbell@mysql_cab_desk. +6 -9
    Fix mysql-6.0-rpl-merge tree
    
    Change to 1 connection and remove myisam from test.

  mysql-test/t/backup_commit_blocker.test@stripped, 2007-12-03 15:28:07-05:00, cbell@mysql_cab_desk. +56 -0
    Fix mysql-6.0-rpl-merge tree
    
    Remove myisam from test and add diagnostic output (for valgrind failures).

  mysql-test/t/backup_ddl_blocker.test@stripped, 2007-12-03 15:28:07-05:00, cbell@mysql_cab_desk. +196 -5
    Fix mysql-6.0-rpl-merge tree
    
    Remove myisam from test and add diagnostic output (for valgrind failures).

  mysql-test/t/backup_no_data.test@stripped, 2007-12-03 15:28:08-05:00, cbell@mysql_cab_desk. +1 -10
    Fix mysql-6.0-rpl-merge tree
    
    Change to 1 connection and remove myisam from test.

  mysql-test/t/backup_no_engine.test@stripped, 2007-12-03 15:28:09-05:00, cbell@mysql_cab_desk. +1 -1
    Fix mysql-6.0-rpl-merge tree
    
    Remove myisam from test.

  mysql-test/t/backup_progress.test@stripped, 2007-12-03 15:28:09-05:00, cbell@mysql_cab_desk. +1 -1
    Fix mysql-6.0-rpl-merge tree
    
    Remove myisam from test.

  mysql-test/t/backup_security.test@stripped, 2007-12-03 15:28:10-05:00, cbell@mysql_cab_desk. +1 -1
    Fix mysql-6.0-rpl-merge tree
    
    Remove myisam from test.

  sql/backup/backup_progress.cc@stripped, 2007-12-03 15:28:11-05:00, cbell@mysql_cab_desk. +9 -9
    Fix mysql-6.0-rpl-merge tree
    
    Remove my_time_t references for safer time_t variables.

  sql/backup/backup_progress.h@stripped, 2007-12-03 15:28:11-05:00, cbell@mysql_cab_desk. +5 -5
    Fix mysql-6.0-rpl-merge tree
    
    Remove my_time_t references for safer time_t variables.

  sql/backup/be_default.cc@stripped, 2007-12-03 15:28:12-05:00, cbell@mysql_cab_desk. +0 -1
    Fix mysql-6.0-rpl-merge tree
    
    Remove my_time_t references from driver.

  sql/backup/be_default.h@stripped, 2007-12-03 15:28:13-05:00, cbell@mysql_cab_desk. +0 -2
    Fix mysql-6.0-rpl-merge tree
    
    Remove my_time_t references from driver.

  sql/backup/catalog.cc@stripped, 2007-12-03 15:28:14-05:00, cbell@mysql_cab_desk. +1 -1
    Fix mysql-6.0-rpl-merge tree
    
    Remove my_time_t references for safer time_t variables.

  sql/backup/catalog.h@stripped, 2007-12-03 15:28:14-05:00, cbell@mysql_cab_desk. +4 -4
    Fix mysql-6.0-rpl-merge tree
    
    Remove my_time_t references for safer time_t variables.

  sql/backup/data_backup.cc@stripped, 2007-12-03 15:28:15-05:00, cbell@mysql_cab_desk. +1 -1
    Fix mysql-6.0-rpl-merge tree
    
    Remove my_time_t references for safer time_t variables.

  sql/backup/kernel.cc@stripped, 2007-12-03 15:28:16-05:00, cbell@mysql_cab_desk. +3 -3
    Fix mysql-6.0-rpl-merge tree
    
    Remove my_time_t references for safer time_t variables.

  sql/backup/stream_v1.c@stripped, 2007-12-03 15:28:16-05:00, cbell@mysql_cab_desk. +44 -12
    Fix mysql-6.0-rpl-merge tree
    
    Use method to safely convert to byte type.

  sql/backup/stream_v1_transport.c@stripped, 2007-12-03 15:28:17-05:00, cbell@mysql_cab_desk. +14 -5
    Fix mysql-6.0-rpl-merge tree
    
    Use method to safely convert to byte type.

diff -Nrup a/mysql-test/r/backup.result b/mysql-test/r/backup.result
--- a/mysql-test/r/backup.result	2007-11-30 03:29:39 -05:00
+++ b/mysql-test/r/backup.result	2007-12-03 15:28:01 -05:00
@@ -13,7 +13,7 @@ Note	1051	Unknown table 'building'
 CREATE TABLE `building` (
 `dir_code` char(4),
 `building` char(6)
-) ENGINE=myisam DEFAULT CHARSET=latin1;
+) ENGINE=MEMORY DEFAULT CHARSET=latin1;
 LOCK TABLES `building` WRITE;
 INSERT INTO `building` VALUES ('N41','1300'),('N01','1453'),('M00','1000'),('N41','1301'),('N41','1305');
 UNLOCK TABLES;
@@ -24,7 +24,7 @@ CREATE TABLE `directorate` (
 `dir_code` char(4),
 `dir_name` char(30),
 `dir_head_id` char(9)
-) ENGINE=myisam DEFAULT CHARSET=latin1;
+) ENGINE=MEMORY DEFAULT CHARSET=latin1;
 LOCK TABLES `directorate` WRITE;
 INSERT INTO `directorate` VALUES ('N41','Development','333445555'),('N01','Human Resources','123654321'),('M00','Management','333444444');
 UNLOCK TABLES;
@@ -40,7 +40,7 @@ CREATE TABLE `staff` (
 `sex` char(1),
 `salary` int(11),
 `mgr_id` char(9)
-) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+) ENGINE=MEMORY DEFAULT CHARSET=latin1;
 LOCK TABLES `staff` WRITE;
 INSERT INTO `staff` VALUES ('333445555','John','Q','Smith','M',30000,'333444444'),('123763153','William','E','Walters','M',25000,'123654321'),('333444444','Alicia','F','St.Cruz','F',25000,NULL),('921312388','Goy','X','Hong','F',40000,'123654321'),('800122337','Rajesh','G','Kardakarna','M',38000,'333445555'),('820123637','Monty','C','Smythe','M',38000,'333445555'),('830132335','Richard','E','Jones','M',38000,'333445555'),('333445665','Edward','E','Engles','M',25000,'333445555'),('123654321','Beware','D','Borg','F',55000,'333444444'),('123456789','Wilma','N','Maxima','F',43000,'333445555');
 UNLOCK TABLES;
@@ -127,9 +127,9 @@ CREATE TABLE bup_default.wide (
 `p` char(255) DEFAULT NULL,
 `q` TEXT,
 PRIMARY KEY (`a`)
-) ENGINE=myisam DEFAULT CHARSET=latin1;
+) ENGINE=INNODB DEFAULT CHARSET=latin1;
 CREATE TABLE bup_default.t1 (a int) engine=innodb;
-CREATE TABLE bup_default.t2 (a int) engine=myisam;
+CREATE TABLE bup_default.t2 (a int) engine=MEMORY;
 CREATE TABLE bup_default.t1_blob (a int, b text) engine=innodb;
 INSERT INTO bup_default.wide VALUES (
 NULL,
diff -Nrup a/mysql-test/r/backup_commit_blocker.result b/mysql-test/r/backup_commit_blocker.result
--- a/mysql-test/r/backup_commit_blocker.result	2007-11-30 03:29:51 -05:00
+++ b/mysql-test/r/backup_commit_blocker.result	2007-12-03 15:28:02 -05:00
@@ -62,19 +62,44 @@ get_lock("commit_blocker_step_1", 0)
 con1: Backing up database -- will block with lock
 BACKUP DATABASE bup_commit_blocker TO "bup_commit_blocker.bak";
 con5: Checking lock
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+state	info
+debug_sync_point: commit_blocker_step_1	BACKUP DATABASE bup_commit_blocker TO "bup_commit_blocker.bak"
 con3: Starting commit -- will block with lock
 COMMIT;
 con5: Checking lock
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "COMMIT%";
+state	info
+debug_sync_point: commit_blocker_step_1	COMMIT
 con5: Getting lock on commit blocker.
 SELECT get_lock("backup_commit_blocker", 0);
 get_lock("backup_commit_blocker", 0)
 1
 con5: Checking lock
-con5: Checking lock
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+state	info
+debug_sync_point: backup_commit_blocker	BACKUP DATABASE bup_commit_blocker TO "bup_commit_blocker.bak"
+con5: Checking lock
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "COMMIT%";
+state	info
+debug_sync_point: backup_commit_blocker	COMMIT
 con4: Starting begin -- will block with lock
 Assumption (c): TRX not started is not included in backup
 BEGIN;
 con5: Checking lock
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BEGIN%";
+state	info
+debug_sync_point: backup_commit_blocker	BEGIN
 con5: Releasing lock
 SELECT release_lock("backup_commit_blocker");
 release_lock("backup_commit_blocker")
@@ -188,6 +213,11 @@ SELECT get_lock("commit_blocker_step_4",
 get_lock("commit_blocker_step_4", 0)
 1
 con5: Checking lock
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+state	info
+debug_sync_point: commit_blocker_step_4	BACKUP DATABASE bup_commit_blocker TO "bup_commit_blocker.bak"
 con7: Show that the statement in progress has executed before backup.
 SELECT * FROM bup_commit_blocker.t5;
 col_a
@@ -200,6 +230,11 @@ con7: Starting non-trx about to start --
 Assumption (e): non-TRX not started is not included in backup
 UPDATE bup_commit_blocker.t5 SET col_a = 333 WHERE col_a = 30;
 con5: Checking lock
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "UPDATE%";
+state	info
+Waiting for release of readlock	UPDATE bup_commit_blocker.t5 SET col_a = 333 WHERE col_a = 30
 con5: Releasing locks
 SELECT release_lock("commit_blocker_step_4");
 release_lock("commit_blocker_step_4")
@@ -313,20 +348,50 @@ get_lock("commit_blocker_step_1", 0)
 con1: Backing up database -- will block with lock
 BACKUP DATABASE bup_commit_blocker TO "bup_commit_blocker.bak";
 con5: Checking lock
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+state	info
+debug_sync_point: commit_blocker_step_1	BACKUP DATABASE bup_commit_blocker TO "bup_commit_blocker.bak"
 con3: Starting commit -- will block with lock
 COMMIT;
 con5: Checking lock
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "COMMIT%";
+state	info
+debug_sync_point: commit_blocker_step_1	COMMIT
 con5: Getting lock on commit blocker.
 SELECT get_lock("backup_commit_blocker", 0);
 get_lock("backup_commit_blocker", 0)
 1
 con5: Checking lock
-con5: Checking lock
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+state	info
+debug_sync_point: backup_commit_blocker	BACKUP DATABASE bup_commit_blocker TO "bup_commit_blocker.bak"
+con5: Checking lock
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "COMMIT%";
+state	info
+debug_sync_point: backup_commit_blocker	COMMIT
 con4: Starting begin -- will block with lock
 Assumption (c): TRX not started is not included in backup
 BEGIN;
 con5: Checking lock
-con5: Checking lock
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BEGIN%";
+state	info
+debug_sync_point: backup_commit_blocker	BEGIN
+con5: Checking lock
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+state	info
+debug_sync_point: backup_commit_blocker	BACKUP DATABASE bup_commit_blocker TO "bup_commit_blocker.bak"
 con7: Show that the statement in progress has executed before backup.
 SELECT * FROM bup_commit_blocker.t5;
 col_a
@@ -339,6 +404,11 @@ con7: Starting non-trx about to start --
 Assumption (e): non-TRX not started is not included in backup
 DELETE FROM bup_commit_blocker.t5 WHERE col_a = 50;
 con5: Checking lock
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DELETE%";
+state	info
+Waiting for release of readlock	DELETE FROM bup_commit_blocker.t5 WHERE col_a = 50
 con5: Releasing lock
 SELECT release_lock("backup_commit_blocker");
 release_lock("backup_commit_blocker")
diff -Nrup a/mysql-test/r/backup_ddl_blocker.result b/mysql-test/r/backup_ddl_blocker.result
--- a/mysql-test/r/backup_ddl_blocker.result	2007-11-29 22:20:42 -05:00
+++ b/mysql-test/r/backup_ddl_blocker.result	2007-12-03 15:28:02 -05:00
@@ -34,15 +34,39 @@ ALTER TABLE bup_ddl_blocker.t2 ADD COLUM
 con1: Backing up database -- will block with lock
 BACKUP DATABASE bup_ddl_blocker TO "bup_ddl_blocker.bak";
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+state	info
+debug_sync_point: DDL_in_progress	BACKUP DATABASE bup_ddl_blocker TO "bup_ddl_blocker.bak"
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "CREATE TABLE bup_ddl_blocker.t1%";
+state	info
+debug_sync_point: DDL_in_progress	CREATE TABLE bup_ddl_blocker.t1 (col_a CHAR(40)) ENGINE=INNODB
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t2%";
+state	info
+debug_sync_point: DDL_in_progress	ALTER TABLE bup_ddl_blocker.t2 ADD COLUMN col_b int
 con6: Getting lock on DDL blocker.
 SELECT get_lock("DDL_blocked", 0);
 get_lock("DDL_blocked", 0)
 1
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+state	info
+debug_sync_point: DDL_blocked	BACKUP DATABASE bup_ddl_blocker TO "bup_ddl_blocker.bak"
 con4: Try a DDL but it is blocked by backup -- will not be in backup
 CREATE TABLE bup_ddl_blocker.t3 (col_a CHAR(40)) ENGINE=INNODB;
 con5: Try a DDL but it is blocked by backup -- will not be in backup
 ALTER TABLE bup_ddl_blocker.t4 ADD COLUMN col_b int;
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "CREATE TABLE bup_ddl_blocker.t3%";
+state	info
+DDL blocker: DDL is blocked	CREATE TABLE bup_ddl_blocker.t3 (col_a CHAR(40)) ENGINE=INNODB
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t4%";
+state	info
+DDL blocker: DDL is blocked	ALTER TABLE bup_ddl_blocker.t4 ADD COLUMN col_b int
 con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 release_lock("DDL_blocked")
@@ -131,15 +155,39 @@ ALTER TABLE bup_ddl_blocker.t2 ADD COLUM
 con1: Restoring database -- will block with lock
 RESTORE FROM "bup_ddl_blocker_orig.bak";
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+state	info
+debug_sync_point: DDL_in_progress	RESTORE FROM "bup_ddl_blocker_orig.bak"
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "CREATE TABLE bup_ddl_blocker.t1%";
+state	info
+debug_sync_point: DDL_in_progress	CREATE TABLE bup_ddl_blocker.t1 (col_a CHAR(40)) ENGINE=INNODB
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t2%";
+state	info
+debug_sync_point: DDL_in_progress	ALTER TABLE bup_ddl_blocker.t2 ADD COLUMN col_b int
 con6: Getting lock on DDL blocker.
 SELECT get_lock("DDL_blocked", 0);
 get_lock("DDL_blocked", 0)
 1
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+state	info
+debug_sync_point: DDL_blocked	RESTORE FROM "bup_ddl_blocker_orig.bak"
 con4: Try a DDL but it is blocked by backup -- will not be in backup
 CREATE TABLE bup_ddl_blocker.t3 (col_a CHAR(40)) ENGINE=INNODB;
 con5: Try a DDL but it is blocked by backup -- will not be in backup
 ALTER TABLE bup_ddl_blocker.t4 ADD COLUMN col_b int;
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "CREATE TABLE bup_ddl_blocker.t3%";
+state	info
+DDL blocker: DDL is blocked	CREATE TABLE bup_ddl_blocker.t3 (col_a CHAR(40)) ENGINE=INNODB
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t4%";
+state	info
+DDL blocker: DDL is blocked	ALTER TABLE bup_ddl_blocker.t4 ADD COLUMN col_b int
 con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 release_lock("DDL_blocked")
@@ -203,15 +251,39 @@ REPAIR TABLE bup_ddl_blocker.t2;
 con1: Backing up database -- will block with lock
 BACKUP DATABASE bup_ddl_blocker TO "bup_ddl_blocker.bak";
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+state	info
+debug_sync_point: DDL_in_progress	BACKUP DATABASE bup_ddl_blocker TO "bup_ddl_blocker.bak"
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RENAME TABLE bup_ddl_blocker.t1%";
+state	info
+debug_sync_point: DDL_in_progress	RENAME TABLE bup_ddl_blocker.t1 TO bup_ddl_blocker.t01
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "REPAIR TABLE bup_ddl_blocker.t2%";
+state	info
+debug_sync_point: DDL_in_progress	REPAIR TABLE bup_ddl_blocker.t2
 con6: Getting lock on DDL blocker.
 SELECT get_lock("DDL_blocked", 0);
 get_lock("DDL_blocked", 0)
 1
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+state	info
+debug_sync_point: DDL_blocked	BACKUP DATABASE bup_ddl_blocker TO "bup_ddl_blocker.bak"
 con4: Try a DDL but it is blocked by backup -- will not be in backup
 RENAME TABLE bup_ddl_blocker.t3 TO bup_ddl_blocker.t03;
 con5: Try a DDL but it is blocked by backup -- will not be in backup
 REPAIR TABLE bup_ddl_blocker.t4;
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RENAME TABLE bup_ddl_blocker.t3%";
+state	info
+DDL blocker: DDL is blocked	RENAME TABLE bup_ddl_blocker.t3 TO bup_ddl_blocker.t03
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "REPAIR TABLE bup_ddl_blocker.t4%";
+state	info
+DDL blocker: DDL is blocked	REPAIR TABLE bup_ddl_blocker.t4
 con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 release_lock("DDL_blocked")
@@ -291,15 +363,39 @@ REPAIR TABLE bup_ddl_blocker.t2;
 con1: Restoring database -- will block with lock
 RESTORE FROM "bup_ddl_blocker_orig.bak";
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+state	info
+debug_sync_point: DDL_in_progress	RESTORE FROM "bup_ddl_blocker_orig.bak"
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RENAME TABLE bup_ddl_blocker.t1%";
+state	info
+debug_sync_point: DDL_in_progress	RENAME TABLE bup_ddl_blocker.t1 TO bup_ddl_blocker.t01
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "REPAIR TABLE bup_ddl_blocker.t2%";
+state	info
+debug_sync_point: DDL_in_progress	REPAIR TABLE bup_ddl_blocker.t2
 con6: Getting lock on DDL blocker.
 SELECT get_lock("DDL_blocked", 0);
 get_lock("DDL_blocked", 0)
 1
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+state	info
+debug_sync_point: DDL_blocked	RESTORE FROM "bup_ddl_blocker_orig.bak"
 con4: Try a DDL but it is blocked by backup -- will not be in backup
 RENAME TABLE bup_ddl_blocker.t3 TO bup_ddl_blocker.t03;
 con5: Try a DDL but it is blocked by backup -- will not be in backup
 REPAIR TABLE bup_ddl_blocker.t4;
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RENAME TABLE bup_ddl_blocker.t3%";
+state	info
+DDL blocker: DDL is blocked	RENAME TABLE bup_ddl_blocker.t3 TO bup_ddl_blocker.t03
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "REPAIR TABLE bup_ddl_blocker.t4%";
+state	info
+DDL blocker: DDL is blocked	REPAIR TABLE bup_ddl_blocker.t4
 con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 release_lock("DDL_blocked")
@@ -359,15 +455,39 @@ DROP TABLE bup_ddl_blocker.t2;
 con1: Backing up database -- will block with lock
 BACKUP DATABASE bup_ddl_blocker TO "bup_ddl_blocker.bak";
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+state	info
+debug_sync_point: DDL_in_progress	BACKUP DATABASE bup_ddl_blocker TO "bup_ddl_blocker.bak"
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "OPTIMIZE TABLE bup_ddl_blocker.t1%";
+state	info
+debug_sync_point: DDL_in_progress	OPTIMIZE TABLE bup_ddl_blocker.t1
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DROP TABLE bup_ddl_blocker.t2%";
+state	info
+debug_sync_point: DDL_in_progress	DROP TABLE bup_ddl_blocker.t2
 con6: Getting lock on DDL blocker.
 SELECT get_lock("DDL_blocked", 0);
 get_lock("DDL_blocked", 0)
 1
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+state	info
+debug_sync_point: DDL_blocked	BACKUP DATABASE bup_ddl_blocker TO "bup_ddl_blocker.bak"
 con4: Try a DDL but it is blocked by backup -- will not be in backup
 OPTIMIZE TABLE bup_ddl_blocker.t3;
 con5: Try a DDL but it is blocked by backup -- will not be in backup
 DROP TABLE bup_ddl_blocker.t4;
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "OPTIMIZE TABLE bup_ddl_blocker.t3%";
+state	info
+DDL blocker: DDL is blocked	OPTIMIZE TABLE bup_ddl_blocker.t3
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DROP TABLE bup_ddl_blocker.t4%";
+state	info
+DDL blocker: DDL is blocked	DROP TABLE bup_ddl_blocker.t4
 con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 release_lock("DDL_blocked")
@@ -442,15 +562,39 @@ DROP TABLE bup_ddl_blocker.t2;
 con1: Restoring database -- will block with lock
 RESTORE FROM "bup_ddl_blocker_orig.bak";
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+state	info
+debug_sync_point: DDL_in_progress	RESTORE FROM "bup_ddl_blocker_orig.bak"
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "OPTIMIZE TABLE bup_ddl_blocker.t1%";
+state	info
+debug_sync_point: DDL_in_progress	OPTIMIZE TABLE bup_ddl_blocker.t1
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DROP TABLE bup_ddl_blocker.t2%";
+state	info
+debug_sync_point: DDL_in_progress	DROP TABLE bup_ddl_blocker.t2
 con6: Getting lock on DDL blocker.
 SELECT get_lock("DDL_blocked", 0);
 get_lock("DDL_blocked", 0)
 1
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+state	info
+debug_sync_point: DDL_blocked	RESTORE FROM "bup_ddl_blocker_orig.bak"
 con4: Try a DDL but it is blocked by backup -- will not be in backup
 OPTIMIZE TABLE bup_ddl_blocker.t3;
 con5: Try a DDL but it is blocked by backup -- will not be in backup
 DROP TABLE bup_ddl_blocker.t4;
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "OPTIMIZE TABLE bup_ddl_blocker.t3%";
+state	info
+DDL blocker: DDL is blocked	OPTIMIZE TABLE bup_ddl_blocker.t3
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DROP TABLE bup_ddl_blocker.t4%";
+state	info
+DDL blocker: DDL is blocked	DROP TABLE bup_ddl_blocker.t4
 con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 release_lock("DDL_blocked")
@@ -487,7 +631,7 @@ CREATE DATABASE bup_ddl_blocker_2;
 CREATE DATABASE bup_ddl_blocker_4;
 con1: Creating tables
 CREATE TABLE bup_ddl_blocker_2.t1 (col_a CHAR(40)) ENGINE=INNODB;
-CREATE TABLE bup_ddl_blocker_4.t1 (col_a CHAR(40)) ENGINE=MYISAM;
+CREATE TABLE bup_ddl_blocker_4.t1 (col_a CHAR(40)) ENGINE=MEMORY;
 con1: Loading data
 INSERT INTO bup_ddl_blocker_2.t1 VALUES ("01 Some data to test");
 INSERT INTO bup_ddl_blocker_2.t1 VALUES ("02 Some data to test");
@@ -511,15 +655,39 @@ DROP DATABASE bup_ddl_blocker_2;
 con1: Backing up database -- will block with lock
 BACKUP DATABASE * TO "bup_ddl_blocker.bak";
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+state	info
+debug_sync_point: DDL_in_progress	BACKUP DATABASE * TO "bup_ddl_blocker.bak"
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "CREATE DATABASE bup_ddl_blocker_1%";
+state	info
+debug_sync_point: DDL_in_progress	CREATE DATABASE bup_ddl_blocker_1
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DROP DATABASE bup_ddl_blocker_2%";
+state	info
+debug_sync_point: DDL_in_progress	DROP DATABASE bup_ddl_blocker_2
 con6: Getting lock on DDL blocker.
 SELECT get_lock("DDL_blocked", 0);
 get_lock("DDL_blocked", 0)
 1
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+state	info
+debug_sync_point: DDL_blocked	BACKUP DATABASE * TO "bup_ddl_blocker.bak"
 con4: Try a DDL but it is blocked by backup -- will not be in backup
 CREATE DATABASE bup_ddl_blocker_3;
 con5: Try a DDL but it is blocked by backup -- will not be in backup
 DROP DATABASE bup_ddl_blocker_4;
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "CREATE DATABASE bup_ddl_blocker_3%";
+state	info
+DDL blocker: DDL is blocked	CREATE DATABASE bup_ddl_blocker_3
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DROP DATABASE bup_ddl_blocker_4%";
+state	info
+DDL blocker: DDL is blocked	DROP DATABASE bup_ddl_blocker_4
 con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 release_lock("DDL_blocked")
@@ -567,7 +735,7 @@ CREATE DATABASE bup_ddl_blocker_2;
 CREATE DATABASE bup_ddl_blocker_4;
 con1: Creating tables
 CREATE TABLE bup_ddl_blocker_2.t1 (col_a CHAR(40)) ENGINE=INNODB;
-CREATE TABLE bup_ddl_blocker_4.t1 (col_a CHAR(40)) ENGINE=MYISAM;
+CREATE TABLE bup_ddl_blocker_4.t1 (col_a CHAR(40)) ENGINE=MEMORY;
 con1: Loading data
 INSERT INTO bup_ddl_blocker_2.t1 VALUES ("01 Some data to test");
 INSERT INTO bup_ddl_blocker_2.t1 VALUES ("02 Some data to test");
@@ -594,15 +762,39 @@ DROP DATABASE bup_ddl_blocker_2;
 con1: Restoring database -- will block with lock
 RESTORE FROM "bup_ddl_blocker_orig.bak";
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+state	info
+debug_sync_point: DDL_in_progress	RESTORE FROM "bup_ddl_blocker_orig.bak"
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "CREATE DATABASE bup_ddl_blocker_1%";
+state	info
+debug_sync_point: DDL_in_progress	CREATE DATABASE bup_ddl_blocker_1
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DROP DATABASE bup_ddl_blocker_2%";
+state	info
+debug_sync_point: DDL_in_progress	DROP DATABASE bup_ddl_blocker_2
 con6: Getting lock on DDL blocker.
 SELECT get_lock("DDL_blocked", 0);
 get_lock("DDL_blocked", 0)
 1
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+state	info
+debug_sync_point: DDL_blocked	RESTORE FROM "bup_ddl_blocker_orig.bak"
 con4: Try a DDL but it is blocked by backup -- will not be in backup
 CREATE DATABASE bup_ddl_blocker_3;
 con5: Try a DDL but it is blocked by backup -- will not be in backup
 DROP DATABASE bup_ddl_blocker_4;
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "CREATE DATABASE bup_ddl_blocker_3%";
+state	info
+DDL blocker: DDL is blocked	CREATE DATABASE bup_ddl_blocker_3
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DROP DATABASE bup_ddl_blocker_4%";
+state	info
+DDL blocker: DDL is blocked	DROP DATABASE bup_ddl_blocker_4
 con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 release_lock("DDL_blocked")
@@ -634,7 +826,7 @@ CREATE DATABASE bup_ddl_blocker_2 CHARAC
 CREATE DATABASE bup_ddl_blocker_4 CHARACTER SET latin1;
 con1: Creating tables
 CREATE TABLE bup_ddl_blocker_2.t1 (col_a CHAR(40)) ENGINE=INNODB;
-CREATE TABLE bup_ddl_blocker_4.t1 (col_a CHAR(40)) ENGINE=MYISAM;
+CREATE TABLE bup_ddl_blocker_4.t1 (col_a CHAR(40)) ENGINE=MEMORY;
 con1: Loading data
 INSERT INTO bup_ddl_blocker_2.t1 VALUES ("01 Some data to test");
 INSERT INTO bup_ddl_blocker_2.t1 VALUES ("02 Some data to test");
@@ -658,15 +850,39 @@ ALTER DATABASE bup_ddl_blocker_2 CHARACT
 con1: Backing up database -- will block with lock
 BACKUP DATABASE * TO "bup_ddl_blocker.bak";
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+state	info
+debug_sync_point: DDL_in_progress	BACKUP DATABASE * TO "bup_ddl_blocker.bak"
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "TRUNCATE TABLE bup_ddl_blocker_2%";
+state	info
+debug_sync_point: DDL_in_progress	TRUNCATE TABLE bup_ddl_blocker_2.t1
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER DATABASE bup_ddl_blocker_2%";
+state	info
+debug_sync_point: DDL_in_progress	ALTER DATABASE bup_ddl_blocker_2 CHARACTER SET latin2
 con6: Getting lock on DDL blocker.
 SELECT get_lock("DDL_blocked", 0);
 get_lock("DDL_blocked", 0)
 1
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+state	info
+debug_sync_point: DDL_blocked	BACKUP DATABASE * TO "bup_ddl_blocker.bak"
 con4: Try a DDL but it is blocked by backup -- will not be in backup
 TRUNCATE TABLE bup_ddl_blocker_4.t1;
 con5: Try a DDL but it is blocked by backup -- will not be in backup
 ALTER DATABASE bup_ddl_blocker_4 CHARACTER SET latin2;
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER DATABASE bup_ddl_blocker_4%";
+state	info
+DDL blocker: DDL is blocked	ALTER DATABASE bup_ddl_blocker_4 CHARACTER SET latin2
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "TRUNCATE TABLE bup_ddl_blocker_4%";
+state	info
+DDL blocker: DDL is blocked	TRUNCATE TABLE bup_ddl_blocker_4.t1
 con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 release_lock("DDL_blocked")
@@ -743,7 +959,7 @@ CREATE DATABASE bup_ddl_blocker_2 CHARAC
 CREATE DATABASE bup_ddl_blocker_4 CHARACTER SET latin1;
 con1: Creating tables
 CREATE TABLE bup_ddl_blocker_2.t1 (col_a CHAR(40)) ENGINE=INNODB;
-CREATE TABLE bup_ddl_blocker_4.t1 (col_a CHAR(40)) ENGINE=MYISAM;
+CREATE TABLE bup_ddl_blocker_4.t1 (col_a CHAR(40)) ENGINE=MEMORY;
 con1: Loading data
 INSERT INTO bup_ddl_blocker_2.t1 VALUES ("01 Some data to test");
 INSERT INTO bup_ddl_blocker_2.t1 VALUES ("02 Some data to test");
@@ -770,15 +986,39 @@ ALTER DATABASE bup_ddl_blocker_2 CHARACT
 con1: Restoring database -- will block with lock
 RESTORE FROM "bup_ddl_blocker_orig.bak";
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+state	info
+debug_sync_point: DDL_in_progress	RESTORE FROM "bup_ddl_blocker_orig.bak"
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER DATABASE bup_ddl_blocker_2%";
+state	info
+debug_sync_point: DDL_in_progress	ALTER DATABASE bup_ddl_blocker_2 CHARACTER SET latin2
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "TRUNCATE TABLE bup_ddl_blocker_2%";
+state	info
+debug_sync_point: DDL_in_progress	TRUNCATE TABLE bup_ddl_blocker_2.t1
 con6: Getting lock on DDL blocker.
 SELECT get_lock("DDL_blocked", 0);
 get_lock("DDL_blocked", 0)
 1
 con6: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+state	info
+debug_sync_point: DDL_blocked	RESTORE FROM "bup_ddl_blocker_orig.bak"
 con4: Try a DDL but it is blocked by backup -- will not be in backup
 TRUNCATE TABLE bup_ddl_blocker_4.t1;
 con5: Try a DDL but it is blocked by backup -- will not be in backup
 ALTER DATABASE bup_ddl_blocker_4 CHARACTER SET latin2;
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "TRUNCATE TABLE bup_ddl_blocker_4%";
+state	info
+DDL blocker: DDL is blocked	TRUNCATE TABLE bup_ddl_blocker_4.t1
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER DATABASE bup_ddl_blocker_4%";
+state	info
+DDL blocker: DDL is blocked	ALTER DATABASE bup_ddl_blocker_4 CHARACTER SET latin2
 con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 release_lock("DDL_blocked")
@@ -822,7 +1062,7 @@ DROP TABLE IF EXISTS test.t2;
 DROP TABLE IF EXISTS bup_ddl_blocker.t1, bup_ddl_blocker.t3;
 con1: Creating tables
 CREATE TABLE bup_ddl_blocker.t1 (col_a CHAR(40)) ENGINE=INNODB;
-CREATE TABLE test.t2 (col_a CHAR(40)) ENGINE=MYISAM;
+CREATE TABLE test.t2 (col_a CHAR(40)) ENGINE=MEMORY;
 CREATE TABLE bup_ddl_blocker.t3 (col_a CHAR(40)) ENGINE=MEMORY;
 con1: Loading data
 INSERT INTO bup_ddl_blocker.t1 VALUES ("01 Some data to test");
@@ -861,6 +1101,18 @@ ALTER TABLE test.t2 ADD COLUMN col_b int
 con4: Get a DDL going and stop in the middle
 ALTER TABLE bup_ddl_blocker.t3 ADD COLUMN col_b int;
 con5: Checking locks
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t1%";
+state	info
+debug_sync_point: DDL_not_blocked	ALTER TABLE bup_ddl_blocker.t1 ADD COLUMN col_b int
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER TABLE test.t2%";
+state	info
+debug_sync_point: DDL_not_blocked	ALTER TABLE test.t2 ADD COLUMN col_b int
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t3%";
+state	info
+debug_sync_point: DDL_not_blocked	ALTER TABLE bup_ddl_blocker.t3 ADD COLUMN col_b int
 con5: Releasing lock
 SELECT release_lock("DDL_not_blocked");
 release_lock("DDL_not_blocked")
diff -Nrup a/mysql-test/r/backup_no_data.result b/mysql-test/r/backup_no_data.result
--- a/mysql-test/r/backup_no_data.result	2007-11-30 03:29:53 -05:00
+++ b/mysql-test/r/backup_no_data.result	2007-12-03 15:28:03 -05:00
@@ -12,10 +12,6 @@ SHOW DATABASES;
 Database
 information_schema
 mysql
-SHOW DATABASES;
-Database
-information_schema
-mysql
 RESTORE FROM 'all.bak';
 backup_id
 #
@@ -55,7 +51,7 @@ Note	1051	Unknown table 't1'
 CREATE TABLE t1 (
 `dir_code` char(4),
 `building` char(6)
-) ENGINE=myisam DEFAULT CHARSET=latin1;
+) ENGINE=MEMORY DEFAULT CHARSET=latin1;
 USE empty_db;
 DROP VIEW IF EXISTS v1;
 CREATE VIEW v1 AS SELECT * FROM test.t1;
diff -Nrup a/mysql-test/r/backup_no_engine.result b/mysql-test/r/backup_no_engine.result
--- a/mysql-test/r/backup_no_engine.result	2007-11-30 03:29:57 -05:00
+++ b/mysql-test/r/backup_no_engine.result	2007-12-03 15:28:04 -05:00
@@ -1,7 +1,7 @@
 DROP DATABASE IF EXISTS db;
 CREATE DATABASE db;
 CREATE TABLE db.t1 (a int, b char(32))
-ENGINE=myisam;
+ENGINE=MEMORY;
 BACKUP DATABASE db TO "db.backup";
 backup_id
 #
@@ -18,5 +18,5 @@ Table	Create Table
 t1	CREATE TABLE `t1` (
   `a` int(11) DEFAULT NULL,
   `b` char(32) DEFAULT NULL
-) ENGINE=MyISAM DEFAULT CHARSET=latin1
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
 DROP DATABASE db;
diff -Nrup a/mysql-test/r/backup_progress.result b/mysql-test/r/backup_progress.result
--- a/mysql-test/r/backup_progress.result	2007-11-30 10:54:18 -05:00
+++ b/mysql-test/r/backup_progress.result	2007-12-03 15:28:04 -05:00
@@ -3,7 +3,7 @@ DROP TABLE IF EXISTS backup_progress.t1_
 SET GLOBAL debug="d,backup_debug";
 CREATE DATABASE backup_progress;
 con1: Create table and new users.
-CREATE TABLE backup_progress.t1 (a char(30)) ENGINE=MYISAM;
+CREATE TABLE backup_progress.t1 (a char(30)) ENGINE=MEMORY;
 CREATE TABLE backup_progress.t2 (a char(30)) ENGINE=INNODB;
 CREATE TABLE backup_progress.t3 (a char(30)) ENGINE=MEMORY;
 CREATE TABLE backup_progress.t1_res (id INT);
diff -Nrup a/mysql-test/r/backup_security.result b/mysql-test/r/backup_security.result
--- a/mysql-test/r/backup_security.result	2007-11-30 03:30:01 -05:00
+++ b/mysql-test/r/backup_security.result	2007-12-03 15:28:05 -05:00
@@ -1,7 +1,7 @@
 DROP DATABASE IF EXISTS backup_test;
 CREATE DATABASE backup_test;
 default: Create table and new users.
-CREATE TABLE backup_test.t1 (a char(30));
+CREATE TABLE backup_test.t1 (a char(30)) ENGINE=MEMORY;
 INSERT INTO backup_test.t1 VALUES ("01 Test #1 - super privilege");
 INSERT INTO backup_test.t1 VALUES ("02 Test #1 - super privilege");
 INSERT INTO backup_test.t1 VALUES ("03 Test #1 - super privilege");
@@ -28,11 +28,13 @@ ERROR 42000: Access denied; you need the
 SHOW ERRORS;
 Level	Code	Message
 Error	1227	Access denied; you need the SUPER privilege for this operation
+Error	1227	Access denied; you need the SUPER privilege for this operation
 no_rights: Attempting restore. Should fail with error 1227
 RESTORE FROM 'bup_no_rights.bak';
 ERROR 42000: Access denied; you need the SUPER privilege for this operation
 SHOW ERRORS;
 Level	Code	Message
+Error	1227	Access denied; you need the SUPER privilege for this operation
 Error	1227	Access denied; you need the SUPER privilege for this operation
 SELECT * FROM backup_test.t1;
 a
diff -Nrup a/mysql-test/t/backup.test b/mysql-test/t/backup.test
--- a/mysql-test/t/backup.test	2007-11-29 23:21:58 -05:00
+++ b/mysql-test/t/backup.test	2007-12-03 15:28:06 -05:00
@@ -2,7 +2,6 @@
 --source include/not_embedded.inc
 
 connect (backup,localhost,root,,);
-connect (restore,localhost,root,,);
 
 connection backup;
 
@@ -16,13 +15,13 @@ USE db1;
 
 # SHOW ENGINES;
 
-#SET @@storage_engine = 'myisam';
+#SET @@storage_engine = 'MEMORY';
 
 DROP TABLE IF EXISTS `building`;
 CREATE TABLE `building` (
   `dir_code` char(4),
   `building` char(6)
-) ENGINE=myisam DEFAULT CHARSET=latin1;
+) ENGINE=MEMORY DEFAULT CHARSET=latin1;
 
 #
 # Dumping data for table `building`
@@ -42,7 +41,7 @@ CREATE TABLE `directorate` (
   `dir_code` char(4),
   `dir_name` char(30),
   `dir_head_id` char(9)
-) ENGINE=myisam DEFAULT CHARSET=latin1;
+) ENGINE=MEMORY DEFAULT CHARSET=latin1;
 
 #
 # Dumping data for table `directorate`
@@ -67,7 +66,7 @@ CREATE TABLE `staff` (
   `sex` char(1),
   `salary` int(11),
   `mgr_id` char(9)
-) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+) ENGINE=MEMORY DEFAULT CHARSET=latin1;
 
 #
 # Dumping data for table `staff`
@@ -106,8 +105,6 @@ DROP DATABASE db2;
 #Disabled until SHOW commands are implemented.
 #SHOW BACKUP 'test.ba';
 
-connection restore;
-
 USE mysql;
 
 --replace_column 1 # 2 # 3 # 4 # 10 # 11 # 12 #
@@ -162,10 +159,10 @@ CREATE TABLE bup_default.wide (
   `p` char(255) DEFAULT NULL,
   `q` TEXT,
   PRIMARY KEY (`a`)
-) ENGINE=myisam DEFAULT CHARSET=latin1;
+) ENGINE=INNODB DEFAULT CHARSET=latin1;
 
 CREATE TABLE bup_default.t1 (a int) engine=innodb;
-CREATE TABLE bup_default.t2 (a int) engine=myisam;
+CREATE TABLE bup_default.t2 (a int) engine=MEMORY;
 CREATE TABLE bup_default.t1_blob (a int, b text) engine=innodb;
 
 # Insert some data.
diff -Nrup a/mysql-test/t/backup_commit_blocker.test b/mysql-test/t/backup_commit_blocker.test
--- a/mysql-test/t/backup_commit_blocker.test	2007-11-29 23:21:58 -05:00
+++ b/mysql-test/t/backup_commit_blocker.test	2007-12-03 15:28:07 -05:00
@@ -188,6 +188,10 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BACKUP DATABASE%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+
 connection con3;
 
 --echo con3: Starting commit -- will block with lock
@@ -202,6 +206,10 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "COMMIT%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "COMMIT%";
+
 # Set the breakpoint for the commit blocker.
 --echo con5: Getting lock on commit blocker.
 SELECT get_lock("backup_commit_blocker", 0);
@@ -213,6 +221,10 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BACKUP DATABASE%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+
 # Wait for lock to be acquired and execution to reach breakpoint
 --echo con5: Checking lock
 let $wait_condition = SELECT state = "debug_sync_point: backup_commit_blocker"
@@ -220,6 +232,10 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "COMMIT%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "COMMIT%";
+
 connection con4;
 
 --echo con4: Starting begin -- will block with lock
@@ -235,6 +251,10 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BEGIN%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BEGIN%";
+
 --echo con5: Releasing lock
 SELECT release_lock("backup_commit_blocker");
 
@@ -393,6 +413,10 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BACKUP DATABASE%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+
 connection con7;
 
 --echo con7: Show that the statement in progress has executed before backup.
@@ -412,6 +436,10 @@ let $wait_condition = SELECT state = "Wa
                       WHERE info LIKE "UPDATE%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "UPDATE%";
+
 --echo con5: Releasing locks
 SELECT release_lock("commit_blocker_step_4");
 SELECT release_lock("backup_commit_blocker");
@@ -601,6 +629,10 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BACKUP DATABASE%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+
 # Wait for lock to be acquired and execution to reach breakpoint
 #--echo con5: Checking lock
 #let $wait_condition = SELECT state = "debug_sync_point: commit_blocker_step_1"
@@ -622,6 +654,10 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "COMMIT%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "COMMIT%";
+
 # Set the breakpoint for the commit blocker.
 --echo con5: Getting lock on commit blocker.
 SELECT get_lock("backup_commit_blocker", 0);
@@ -633,6 +669,10 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BACKUP DATABASE%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+
 # Wait for lock to be acquired and execution to reach breakpoint
 --echo con5: Checking lock
 let $wait_condition = SELECT state = "debug_sync_point: backup_commit_blocker"
@@ -640,6 +680,10 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "COMMIT%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "COMMIT%";
+
 connection con4;
 
 --echo con4: Starting begin -- will block with lock
@@ -655,6 +699,10 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BEGIN%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BEGIN%";
+
 # Wait for lock to be acquired and execution to reach breakpoint
 --echo con5: Checking lock
 
@@ -663,6 +711,10 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BACKUP DATABASE%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+
 connection con7;
 
 --echo con7: Show that the statement in progress has executed before backup.
@@ -681,6 +733,10 @@ let $wait_condition = SELECT state = "Wa
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "DELETE%";
 --source include/wait_condition.inc
+
+SELECT state, info FROM
+INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DELETE%";
 
 --echo con5: Releasing lock
 SELECT release_lock("backup_commit_blocker");
diff -Nrup a/mysql-test/t/backup_ddl_blocker.test b/mysql-test/t/backup_ddl_blocker.test
--- a/mysql-test/t/backup_ddl_blocker.test	2007-11-29 23:21:59 -05:00
+++ b/mysql-test/t/backup_ddl_blocker.test	2007-12-03 15:28:07 -05:00
@@ -150,16 +150,25 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BACKUP DATABASE%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "CREATE TABLE bup_ddl_blocker.t1%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "CREATE TABLE bup_ddl_blocker.t1%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t2%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t2%";
+
 # Now set the breakpoint for DDL blocker.
 # This releases lock on DDL_in_progress stopping all DDLs.
 --echo con6: Getting lock on DDL blocker.
@@ -173,6 +182,9 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BACKUP DATABASE%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+
 connection con4;
 
 --echo con4: Try a DDL but it is blocked by backup -- will not be in backup
@@ -190,11 +202,17 @@ let $wait_condition = SELECT state = "DD
                       WHERE info LIKE "CREATE TABLE bup_ddl_blocker.t3%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "CREATE TABLE bup_ddl_blocker.t3%";
+
 let $wait_condition = SELECT state = "DDL blocker: DDL is blocked"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t4%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t4%";
+
 --echo con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 
@@ -301,16 +319,25 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "RESTORE FROM%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "CREATE TABLE bup_ddl_blocker.t1%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "CREATE TABLE bup_ddl_blocker.t1%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t2%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t2%";
+
 # Now set the breakpoint for DDL blocker.
 # This releases lock on DDL_in_progress stopping all DDLs.
 --echo con6: Getting lock on DDL blocker.
@@ -324,6 +351,9 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "RESTORE FROM%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+
 connection con4;
 
 --echo con4: Try a DDL but it is blocked by backup -- will not be in backup
@@ -341,11 +371,17 @@ let $wait_condition = SELECT state = "DD
                       WHERE info LIKE "CREATE TABLE bup_ddl_blocker.t3%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "CREATE TABLE bup_ddl_blocker.t3%";
+
 let $wait_condition = SELECT state = "DDL blocker: DDL is blocked"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t4%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t4%";
+
 --echo con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 
@@ -430,16 +466,26 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BACKUP DATABASE%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "RENAME TABLE bup_ddl_blocker.t1%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RENAME TABLE bup_ddl_blocker.t1%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "REPAIR TABLE bup_ddl_blocker.t2%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "REPAIR TABLE bup_ddl_blocker.t2%";
+
+
 # Now set the breakpoint for DDL blocker.
 # This releases lock on DDL_in_progress stopping all DDLs.
 --echo con6: Getting lock on DDL blocker.
@@ -453,6 +499,9 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BACKUP DATABASE%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+
 connection con4;
 
 --echo con4: Try a DDL but it is blocked by backup -- will not be in backup
@@ -470,11 +519,17 @@ let $wait_condition = SELECT state = "DD
                       WHERE info LIKE "RENAME TABLE bup_ddl_blocker.t3%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RENAME TABLE bup_ddl_blocker.t3%";
+
 let $wait_condition = SELECT state = "DDL blocker: DDL is blocked"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "REPAIR TABLE bup_ddl_blocker.t4%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "REPAIR TABLE bup_ddl_blocker.t4%";
+
 --echo con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 
@@ -574,16 +629,25 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "RESTORE FROM%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "RENAME TABLE bup_ddl_blocker.t1%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RENAME TABLE bup_ddl_blocker.t1%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "REPAIR TABLE bup_ddl_blocker.t2%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "REPAIR TABLE bup_ddl_blocker.t2%";
+
 # Now set the breakpoint for DDL blocker.
 # This releases lock on DDL_in_progress stopping all DDLs.
 --echo con6: Getting lock on DDL blocker.
@@ -597,6 +661,9 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "RESTORE FROM%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+
 connection con4;
 
 --echo con4: Try a DDL but it is blocked by backup -- will not be in backup
@@ -614,11 +681,17 @@ let $wait_condition = SELECT state = "DD
                       WHERE info LIKE "RENAME TABLE bup_ddl_blocker.t3%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RENAME TABLE bup_ddl_blocker.t3%";
+
 let $wait_condition = SELECT state = "DDL blocker: DDL is blocked"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "REPAIR TABLE bup_ddl_blocker.t4%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "REPAIR TABLE bup_ddl_blocker.t4%";
+
 --echo con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 
@@ -701,16 +774,25 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BACKUP DATABASE%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "OPTIMIZE TABLE bup_ddl_blocker.t1%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "OPTIMIZE TABLE bup_ddl_blocker.t1%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "DROP TABLE bup_ddl_blocker.t2%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DROP TABLE bup_ddl_blocker.t2%";
+
 # Now set the breakpoint for DDL blocker.
 # This releases lock on DDL_in_progress stopping all DDLs.
 --echo con6: Getting lock on DDL blocker.
@@ -724,6 +806,9 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BACKUP DATABASE%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+
 connection con4;
 
 --echo con4: Try a DDL but it is blocked by backup -- will not be in backup
@@ -741,11 +826,17 @@ let $wait_condition = SELECT state = "DD
                       WHERE info LIKE "OPTIMIZE TABLE bup_ddl_blocker.t3%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "OPTIMIZE TABLE bup_ddl_blocker.t3%";
+
 let $wait_condition = SELECT state = "DDL blocker: DDL is blocked"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "DROP TABLE bup_ddl_blocker.t4%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DROP TABLE bup_ddl_blocker.t4%";
+
 --echo con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 
@@ -843,16 +934,25 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "RESTORE FROM%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "OPTIMIZE TABLE bup_ddl_blocker.t1%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "OPTIMIZE TABLE bup_ddl_blocker.t1%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "DROP TABLE bup_ddl_blocker.t2%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DROP TABLE bup_ddl_blocker.t2%";
+
 # Now set the breakpoint for DDL blocker.
 # This releases lock on DDL_in_progress stopping all DDLs.
 --echo con6: Getting lock on DDL blocker.
@@ -866,6 +966,9 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "RESTORE FROM%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+
 connection con4;
 
 --echo con4: Try a DDL but it is blocked by backup -- will not be in backup
@@ -883,11 +986,17 @@ let $wait_condition = SELECT state = "DD
                       WHERE info LIKE "OPTIMIZE TABLE bup_ddl_blocker.t3%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "OPTIMIZE TABLE bup_ddl_blocker.t3%";
+
 let $wait_condition = SELECT state = "DDL blocker: DDL is blocked"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "DROP TABLE bup_ddl_blocker.t4%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DROP TABLE bup_ddl_blocker.t4%";
+
 --echo con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 
@@ -950,7 +1059,7 @@ CREATE DATABASE bup_ddl_blocker_4;
 # Create transaction tables and load them with data.
 --echo con1: Creating tables
 CREATE TABLE bup_ddl_blocker_2.t1 (col_a CHAR(40)) ENGINE=INNODB;
-CREATE TABLE bup_ddl_blocker_4.t1 (col_a CHAR(40)) ENGINE=MYISAM;
+CREATE TABLE bup_ddl_blocker_4.t1 (col_a CHAR(40)) ENGINE=MEMORY;
 
 --echo con1: Loading data
 INSERT INTO bup_ddl_blocker_2.t1 VALUES ("01 Some data to test");
@@ -996,16 +1105,25 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BACKUP DATABASE%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "CREATE DATABASE bup_ddl_blocker_1%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "CREATE DATABASE bup_ddl_blocker_1%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "DROP DATABASE bup_ddl_blocker_2%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DROP DATABASE bup_ddl_blocker_2%";
+
 # Now set the breakpoint for DDL blocker.
 # This releases lock on DDL_in_progress stopping all DDLs.
 --echo con6: Getting lock on DDL blocker.
@@ -1019,6 +1137,9 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BACKUP DATABASE%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+
 connection con4;
 
 --echo con4: Try a DDL but it is blocked by backup -- will not be in backup
@@ -1036,11 +1157,17 @@ let $wait_condition = SELECT state = "DD
                       WHERE info LIKE "CREATE DATABASE bup_ddl_blocker_3%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "CREATE DATABASE bup_ddl_blocker_3%";
+
 let $wait_condition = SELECT state = "DDL blocker: DDL is blocked"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "DROP DATABASE bup_ddl_blocker_4%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DROP DATABASE bup_ddl_blocker_4%";
+
 --echo con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 
@@ -1117,7 +1244,7 @@ CREATE DATABASE bup_ddl_blocker_4;
 # Create transaction tables and load them with data.
 --echo con1: Creating tables
 CREATE TABLE bup_ddl_blocker_2.t1 (col_a CHAR(40)) ENGINE=INNODB;
-CREATE TABLE bup_ddl_blocker_4.t1 (col_a CHAR(40)) ENGINE=MYISAM;
+CREATE TABLE bup_ddl_blocker_4.t1 (col_a CHAR(40)) ENGINE=MEMORY;
 
 --echo con1: Loading data
 INSERT INTO bup_ddl_blocker_2.t1 VALUES ("01 Some data to test");
@@ -1167,16 +1294,25 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "RESTORE FROM%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "CREATE DATABASE bup_ddl_blocker_1%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "CREATE DATABASE bup_ddl_blocker_1%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "DROP DATABASE bup_ddl_blocker_2%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DROP DATABASE bup_ddl_blocker_2%";
+
 # Now set the breakpoint for DDL blocker.
 # This releases lock on DDL_in_progress stopping all DDLs.
 --echo con6: Getting lock on DDL blocker.
@@ -1190,6 +1326,9 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "RESTORE FROM%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+
 connection con4;
 
 --echo con4: Try a DDL but it is blocked by backup -- will not be in backup
@@ -1207,11 +1346,17 @@ let $wait_condition = SELECT state = "DD
                       WHERE info LIKE "CREATE DATABASE bup_ddl_blocker_3%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "CREATE DATABASE bup_ddl_blocker_3%";
+
 let $wait_condition = SELECT state = "DDL blocker: DDL is blocked"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "DROP DATABASE bup_ddl_blocker_4%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "DROP DATABASE bup_ddl_blocker_4%";
+
 --echo con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 
@@ -1273,7 +1418,7 @@ CREATE DATABASE bup_ddl_blocker_4 CHARAC
 # Create transaction tables and load them with data.
 --echo con1: Creating tables
 CREATE TABLE bup_ddl_blocker_2.t1 (col_a CHAR(40)) ENGINE=INNODB;
-CREATE TABLE bup_ddl_blocker_4.t1 (col_a CHAR(40)) ENGINE=MYISAM;
+CREATE TABLE bup_ddl_blocker_4.t1 (col_a CHAR(40)) ENGINE=MEMORY;
 
 --echo con1: Loading data
 
@@ -1320,16 +1465,25 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BACKUP DATABASE%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "TRUNCATE TABLE bup_ddl_blocker_2%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "TRUNCATE TABLE bup_ddl_blocker_2%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "ALTER DATABASE bup_ddl_blocker_2%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER DATABASE bup_ddl_blocker_2%";
+
 # Now set the breakpoint for DDL blocker.
 # This releases lock on DDL_in_progress stopping all DDLs.
 --echo con6: Getting lock on DDL blocker.
@@ -1343,6 +1497,9 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "BACKUP DATABASE%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "BACKUP DATABASE%";
+
 connection con4;
 
 --echo con4: Try a DDL but it is blocked by backup -- will not be in backup
@@ -1359,11 +1516,17 @@ let $wait_condition = SELECT state = "DD
                       WHERE info LIKE "ALTER DATABASE bup_ddl_blocker_4%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER DATABASE bup_ddl_blocker_4%";
+
 let $wait_condition = SELECT state = "DDL blocker: DDL is blocked"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "TRUNCATE TABLE bup_ddl_blocker_4%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "TRUNCATE TABLE bup_ddl_blocker_4%";
+
 --echo con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 
@@ -1462,7 +1625,7 @@ CREATE DATABASE bup_ddl_blocker_4 CHARAC
 # Create transaction tables and load them with data.
 --echo con1: Creating tables
 CREATE TABLE bup_ddl_blocker_2.t1 (col_a CHAR(40)) ENGINE=INNODB;
-CREATE TABLE bup_ddl_blocker_4.t1 (col_a CHAR(40)) ENGINE=MYISAM;
+CREATE TABLE bup_ddl_blocker_4.t1 (col_a CHAR(40)) ENGINE=MEMORY;
 
 --echo con1: Loading data
 
@@ -1513,16 +1676,25 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "RESTORE FROM%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "ALTER DATABASE bup_ddl_blocker_2%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER DATABASE bup_ddl_blocker_2%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_in_progress"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "TRUNCATE TABLE bup_ddl_blocker_2%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "TRUNCATE TABLE bup_ddl_blocker_2%";
+
 # Now set the breakpoint for DDL blocker.
 # This releases lock on DDL_in_progress stopping all DDLs.
 --echo con6: Getting lock on DDL blocker.
@@ -1536,6 +1708,9 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "RESTORE FROM%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "RESTORE FROM%";
+
 connection con4;
 
 --echo con4: Try a DDL but it is blocked by backup -- will not be in backup
@@ -1553,11 +1728,17 @@ let $wait_condition = SELECT state = "DD
                       WHERE info LIKE "TRUNCATE TABLE bup_ddl_blocker_4%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "TRUNCATE TABLE bup_ddl_blocker_4%";
+
 let $wait_condition = SELECT state = "DDL blocker: DDL is blocked"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "ALTER DATABASE bup_ddl_blocker_4%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER DATABASE bup_ddl_blocker_4%";
+
 --echo con6: Releasing lock
 SELECT release_lock("DDL_blocked");
 
@@ -1648,7 +1829,7 @@ DROP TABLE IF EXISTS bup_ddl_blocker.t1,
 # Create transaction tables and load them with data.
 --echo con1: Creating tables
 CREATE TABLE bup_ddl_blocker.t1 (col_a CHAR(40)) ENGINE=INNODB;
-CREATE TABLE test.t2 (col_a CHAR(40)) ENGINE=MYISAM;
+CREATE TABLE test.t2 (col_a CHAR(40)) ENGINE=MEMORY;
 CREATE TABLE bup_ddl_blocker.t3 (col_a CHAR(40)) ENGINE=MEMORY;
 
 --echo con1: Loading data
@@ -1699,16 +1880,25 @@ let $wait_condition = SELECT state = "de
                       WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t1%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t1%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_not_blocked"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "ALTER TABLE test.t2%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER TABLE test.t2%";
+
 let $wait_condition = SELECT state = "debug_sync_point: DDL_not_blocked"
                       FROM INFORMATION_SCHEMA.PROCESSLIST
                       WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t3%";
 --source include/wait_condition.inc
 
+SELECT state, info FROM INFORMATION_SCHEMA.PROCESSLIST
+WHERE info LIKE "ALTER TABLE bup_ddl_blocker.t3%";
+
 --echo con5: Releasing lock
 SELECT release_lock("DDL_not_blocked");
 
@@ -1762,6 +1952,7 @@ DROP DATABASE bup_ddl_blocker;
 
 remove_file $MYSQLTEST_VARDIR/master-data/bup_ddl_blocker_orig.bak;
 remove_file $MYSQLTEST_VARDIR/master-data/bup_ddl_blocker.bak;
+
 
 
 
diff -Nrup a/mysql-test/t/backup_no_data.test b/mysql-test/t/backup_no_data.test
--- a/mysql-test/t/backup_no_data.test	2007-11-29 23:22:01 -05:00
+++ b/mysql-test/t/backup_no_data.test	2007-12-03 15:28:08 -05:00
@@ -1,7 +1,6 @@
 --source include/not_embedded.inc
 
 connect (backup,localhost,root,,);
-connect (restore,localhost,root,,);
 
 connection backup;
 
@@ -24,10 +23,6 @@ DROP DATABASE test;
 
 SHOW DATABASES;
 
-connection restore;
-
-SHOW DATABASES;
-
 --replace_column 1 #
 RESTORE FROM 'all.bak';
 
@@ -57,7 +52,7 @@ DROP TABLE IF EXISTS t1;
 CREATE TABLE t1 (
   `dir_code` char(4),
   `building` char(6)
-) ENGINE=myisam DEFAULT CHARSET=latin1;
+) ENGINE=MEMORY DEFAULT CHARSET=latin1;
 
 USE empty_db;
 
@@ -69,10 +64,6 @@ CREATE VIEW v1 AS SELECT * FROM test.t1;
 
 --replace_column 1 #
 BACKUP DATABASE empty_db TO 'empty_db.bak';
-
-disconnect backup;
-
-connection restore;
 
 SHOW DATABASES;
 
diff -Nrup a/mysql-test/t/backup_no_engine.test b/mysql-test/t/backup_no_engine.test
--- a/mysql-test/t/backup_no_engine.test	2007-11-29 23:22:02 -05:00
+++ b/mysql-test/t/backup_no_engine.test	2007-12-03 15:28:09 -05:00
@@ -13,7 +13,7 @@ DROP DATABASE IF EXISTS db;
 
 CREATE DATABASE db;
 CREATE TABLE db.t1 (a int, b char(32))
-ENGINE=myisam;
+ENGINE=MEMORY;
 
 # copy description of a table using non-existent storage engine
 --copy_file $table_def $MYSQLTEST_VARDIR/master-data/db/t2.frm
diff -Nrup a/mysql-test/t/backup_progress.test b/mysql-test/t/backup_progress.test
--- a/mysql-test/t/backup_progress.test	2007-11-29 23:22:02 -05:00
+++ b/mysql-test/t/backup_progress.test	2007-12-03 15:28:09 -05:00
@@ -29,7 +29,7 @@ CREATE DATABASE backup_progress;
 
 --echo con1: Create table and new users.
 
-CREATE TABLE backup_progress.t1 (a char(30)) ENGINE=MYISAM;
+CREATE TABLE backup_progress.t1 (a char(30)) ENGINE=MEMORY;
 CREATE TABLE backup_progress.t2 (a char(30)) ENGINE=INNODB;
 CREATE TABLE backup_progress.t3 (a char(30)) ENGINE=MEMORY;
 CREATE TABLE backup_progress.t1_res (id INT);
diff -Nrup a/mysql-test/t/backup_security.test b/mysql-test/t/backup_security.test
--- a/mysql-test/t/backup_security.test	2007-11-29 23:22:03 -05:00
+++ b/mysql-test/t/backup_security.test	2007-12-03 15:28:10 -05:00
@@ -19,7 +19,7 @@ CREATE DATABASE backup_test;
 
 --echo default: Create table and new users.
 
-CREATE TABLE backup_test.t1 (a char(30));
+CREATE TABLE backup_test.t1 (a char(30)) ENGINE=MEMORY;
 
 INSERT INTO backup_test.t1 VALUES ("01 Test #1 - super privilege"); 
 INSERT INTO backup_test.t1 VALUES ("02 Test #1 - super privilege"); 
diff -Nrup a/sql/backup/backup_progress.cc b/sql/backup/backup_progress.cc
--- a/sql/backup/backup_progress.cc	2007-11-30 11:02:34 -05:00
+++ b/sql/backup/backup_progress.cc	2007-12-03 15:28:11 -05:00
@@ -240,7 +240,7 @@ int update_online_backup_int_field(ulong
 int update_online_backup_datetime_field(ulonglong backup_id, 
                                         const char *table_name,
                                         enum_ob_table_field fld, 
-                                        my_time_t value)
+                                        time_t value)
 {
   TABLE *table= NULL;                   // table to open
   TABLE_LIST tables;                    // List of tables (1 in this case)
@@ -273,7 +273,7 @@ int update_online_backup_datetime_field(
   if (value)
   {
     MYSQL_TIME time;
-    my_tz_OFFSET0->gmt_sec_to_TIME(&time, value);
+    my_tz_OFFSET0->gmt_sec_to_TIME(&time, (my_time_t)value);
 
     table->field[fld]->set_notnull();
     table->field[fld]->store_time(&time, MYSQL_TIMESTAMP_DATETIME);
@@ -577,8 +577,8 @@ int report_ob_size(ulonglong backup_id,
    @returns 1 = failed to find row
   */
 int report_ob_time(ulonglong backup_id,
-                   my_time_t start,
-                   my_time_t stop)
+                   time_t start,
+                   time_t stop)
 {
   int ret= 0;  // return value
 
@@ -605,7 +605,7 @@ int report_ob_time(ulonglong backup_id,
    @returns 1 = failed to find row
   */
 int report_ob_vp_time(ulonglong backup_id,
-                      my_time_t vp_time)
+                      time_t vp_time)
 {
   int ret= 0;  // return value
 
@@ -742,8 +742,8 @@ int report_ob_state(ulonglong backup_id,
   */
 int report_ob_progress(ulonglong backup_id,
                        const char *object,
-                       my_time_t start,
-                       my_time_t stop,
+                       time_t start,
+                       time_t stop,
                        longlong size,
                        longlong progress,
                        int error_num,
@@ -800,7 +800,7 @@ int report_ob_progress(ulonglong backup_
   if (start)
   {
     MYSQL_TIME time;
-    my_tz_OFFSET0->gmt_sec_to_TIME(&time, start);
+    my_tz_OFFSET0->gmt_sec_to_TIME(&time, (my_time_t)start);
 
     table->field[ET_FIELD_PROG_START_TIME]->set_notnull();
     table->field[ET_FIELD_PROG_START_TIME]->store_time(&time, MYSQL_TIMESTAMP_DATETIME);
@@ -809,7 +809,7 @@ int report_ob_progress(ulonglong backup_
   if (stop)
   {
     MYSQL_TIME time;
-    my_tz_OFFSET0->gmt_sec_to_TIME(&time, stop);
+    my_tz_OFFSET0->gmt_sec_to_TIME(&time, (my_time_t)stop);
 
     table->field[ET_FIELD_PROG_STOP_TIME]->set_notnull();
     table->field[ET_FIELD_PROG_STOP_TIME]->store_time(&time, MYSQL_TIMESTAMP_DATETIME);
diff -Nrup a/sql/backup/backup_progress.h b/sql/backup/backup_progress.h
--- a/sql/backup/backup_progress.h	2007-11-30 10:54:18 -05:00
+++ b/sql/backup/backup_progress.h	2007-12-03 15:28:11 -05:00
@@ -149,15 +149,15 @@ int report_ob_size(ulonglong backup_id,
   for stop).
 */
 int report_ob_time(ulonglong backup_id,
-                   my_time_t start,
-                   my_time_t stop);
+                   time_t start,
+                   time_t stop);
 
 /*
   This method updates the validity point time for the backup operation
   identified by backup_id.
 */
 int report_ob_vp_time(ulonglong backup_id,
-                      my_time_t vp_time);
+                      time_t vp_time);
 
 /*
   This method updates the engines information for the backup operation
@@ -172,8 +172,8 @@ int report_ob_engines(ulonglong backup_i
 */
 int report_ob_progress(ulonglong backup_id,
                        const char *object,
-                       my_time_t start,
-                       my_time_t stop,
+                       time_t start,
+                       time_t stop,
                        longlong size,
                        longlong progress,
                        int error_num,
diff -Nrup a/sql/backup/be_default.cc b/sql/backup/be_default.cc
--- a/sql/backup/be_default.cc	2007-11-29 20:39:07 -05:00
+++ b/sql/backup/be_default.cc	2007-12-03 15:28:12 -05:00
@@ -601,7 +601,6 @@ result_t Restore::truncate_table(TABLE *
   */
   if ((last_write_res != 0) && (last_write_res != HA_ERR_WRONG_COMMAND))
     DBUG_RETURN(ERROR);
-  table_access_start= (my_time_t)my_time(0);
   num_rows= 0;
   DBUG_RETURN(OK);
 }
diff -Nrup a/sql/backup/be_default.h b/sql/backup/be_default.h
--- a/sql/backup/be_default.h	2007-11-30 03:28:56 -05:00
+++ b/sql/backup/be_default.h	2007-12-03 15:28:13 -05:00
@@ -192,8 +192,6 @@ class Restore: public Restore_driver
     int blob_ptr_index;            ///< Position in blob pointer list
     THD *m_thd;                    ///< Pointer to current thread struct.
     TABLE_LIST *all_tables;        ///< Reference to list of tables used.
-    my_time_t table_access_start;  ///< Start of current table access
-    my_time_t table_access_stop;   ///< End of current table access
     ulonglong num_rows;            ///< Number of rows in table
 
     uint unpack(byte *packed_row);
diff -Nrup a/sql/backup/catalog.cc b/sql/backup/catalog.cc
--- a/sql/backup/catalog.cc	2007-11-30 10:54:19 -05:00
+++ b/sql/backup/catalog.cc	2007-12-03 15:28:14 -05:00
@@ -67,7 +67,7 @@ Image_info::~Image_info()
 }
 
 
-void Image_info::save_time(const my_time_t t, bstream_time_t &buf)
+void Image_info::save_time(const time_t t, bstream_time_t &buf)
 {
   struct tm time;
   gmtime_r(&t,&time);
diff -Nrup a/sql/backup/catalog.h b/sql/backup/catalog.h
--- a/sql/backup/catalog.h	2007-11-30 10:54:19 -05:00
+++ b/sql/backup/catalog.h	2007-12-03 15:28:14 -05:00
@@ -51,13 +51,13 @@ class Image_info: public st_bstream_imag
 
    virtual ~Image_info();
 
-   void save_start_time(const my_time_t time)
+   void save_start_time(const time_t time)
    { save_time(time, start_time); }
    
-   void save_end_time(const my_time_t time)
+   void save_end_time(const time_t time)
    { save_time(time, end_time); }
 
-   void save_vp_time(const my_time_t time)
+   void save_vp_time(const time_t time)
    { save_time(time, vp_time); }
 
  protected:
@@ -145,7 +145,7 @@ class Image_info: public st_bstream_imag
   String create_stmt_buf;
 
 
-  void save_time(const my_time_t, bstream_time_t&);
+  void save_time(const time_t, bstream_time_t&);
   
   // friends
 
diff -Nrup a/sql/backup/data_backup.cc b/sql/backup/data_backup.cc
--- a/sql/backup/data_backup.cc	2007-11-30 10:54:19 -05:00
+++ b/sql/backup/data_backup.cc	2007-12-03 15:28:15 -05:00
@@ -473,7 +473,7 @@ int write_table_data(THD* thd, Backup_in
   Scheduler   sch(s,&info);         // scheduler instance
   List<Scheduler::Pump>  inactive;  // list of images not yet being created
   size_t      max_init_size=0;      // keeps maximal init size for images in inactive list
-  my_time_t   vp_time;              // to store validity point time
+  time_t      vp_time;              // to store validity point time
 
   DBUG_PRINT("backup/data",("initializing scheduler"));
 
diff -Nrup a/sql/backup/kernel.cc b/sql/backup/kernel.cc
--- a/sql/backup/kernel.cc	2007-11-30 14:44:49 -05:00
+++ b/sql/backup/kernel.cc	2007-12-03 15:28:16 -05:00
@@ -21,7 +21,7 @@
 #include "backup_aux.h"
 #include "stream.h"
 #include "backup_kernel.h"
-#include "catalog.h"
+#include "catalog.h" 
 #include "debug.h"
 #include "be_native.h"
 #include "be_default.h"
@@ -83,7 +83,7 @@ int
 execute_backup_command(THD *thd, LEX *lex)
 {
   ulonglong backup_prog_id= 0;
-  my_time_t start=0, stop=0;
+  time_t start=0, stop=0;
   
   DBUG_ENTER("execute_backup_command");
   DBUG_ASSERT(thd && lex);
@@ -97,7 +97,7 @@ execute_backup_command(THD *thd, LEX *le
   */
   if (check_global_access(thd, SUPER_ACL))
   {
-    my_error(ER_SPECIFIC_ACCESS_DENIED_ERROR,MYF(0));
+    my_error(ER_SPECIFIC_ACCESS_DENIED_ERROR, MYF(0), "SUPER");
     DBUG_RETURN(ER_SPECIFIC_ACCESS_DENIED_ERROR);
   }
 
diff -Nrup a/sql/backup/stream_v1.c b/sql/backup/stream_v1.c
--- a/sql/backup/stream_v1.c	2007-11-30 15:14:08 -05:00
+++ b/sql/backup/stream_v1.c	2007-12-03 15:28:16 -05:00
@@ -42,7 +42,6 @@ typedef bstream_blob blob;
 /* this is needed for seamless compilation on windows */
 #define bzero(A,B)  memset((A),0,(B))
 
-
 /*
   Macros used to test results of functions writing/reading backup stream.
 
@@ -90,6 +89,36 @@ int bstream_read_part(backup_stream*, bs
 int bstream_read_blob(backup_stream*, bstream_blob);
 int bstream_skip(backup_stream*, unsigned long int);
 
+/* Helper functions to safely convert values to byte type. */
+byte get_byte_ulong(unsigned long int value)
+{
+  ASSERT(value < 256);
+  return (byte)value;
+}
+
+byte get_byte_uint(unsigned int value)
+{
+  ASSERT(value < 256);
+  return (byte)value;
+}
+
+byte get_byte_short(short value)
+{
+  ASSERT(value < 256);
+  return (byte)value;
+}
+
+byte get_byte_ushort(unsigned short value)
+{
+  ASSERT(value < 256);
+  return (byte)value;
+}
+
+byte get_byte_size_t(size_t value)
+{
+  ASSERT(value < 256);
+  return (byte)value;
+}
 
 /*************************************************************************
  *
@@ -1795,11 +1824,13 @@ int bstream_wr_int4(backup_stream *s, un
 {
   byte buf[4];
   blob b= {buf, buf+4};
+  int i;
 
-  buf[0]= (byte) (x & 0xFF); x >>= 8;
-  buf[1]= (byte) (x & 0xFF); x >>= 8;
-  buf[2]= (byte) (x & 0xFF); x >>= 8;
-  buf[3]= (byte) (x & 0xFF); x >>= 8;
+  for (i= 0; i < 4; i++)
+  {
+    buf[i]= get_byte_ulong((x & 0xFF));
+    x >>= 8;
+  }
 
   return bstream_write_blob(s,b);
 }
@@ -1844,7 +1875,7 @@ int bstream_wr_num(backup_stream *s, uns
   byte b;
 
   do {
-    b= (byte) (x & 0x7F);
+    b= get_byte_ulong((x & 0x7F));
     CHECK_WR_RES(bstream_wr_byte(s, b | ( x>0x7F ? 0x80: 0)));
     x >>= 7;
   } while (x);
@@ -1965,12 +1996,13 @@ int bstream_wr_time(backup_stream *s, bs
   byte buf[6];
   blob b= {buf, buf+6};
 
-  buf[0]= ((byte)(time->year>>4) & 0xFF);
-  buf[1]= (((byte)(time->year<<4) & 0xF0) | ((byte)(time->mon &0x0F)));
-  buf[2]= (byte)(time->mday);
-  buf[3]= (byte)(time->hour);
-  buf[4]= (byte)(time->min);
-  buf[5]= (byte)(time->sec);
+  buf[0]= get_byte_uint(((time->year>>4) & 0xFF));
+  buf[1]= (get_byte_uint(((time->year<<4) & 0xF0)) |
+           get_byte_ushort((time->mon &0x0F)));
+  buf[2]= get_byte_ushort(time->mday);
+  buf[3]= get_byte_ushort(time->hour);
+  buf[4]= get_byte_ushort(time->min);
+  buf[5]= get_byte_ushort(time->sec);
 
   return bstream_write_blob(s,b);
 }
diff -Nrup a/sql/backup/stream_v1_transport.c b/sql/backup/stream_v1_transport.c
--- a/sql/backup/stream_v1_transport.c	2007-11-30 15:14:08 -05:00
+++ b/sql/backup/stream_v1_transport.c	2007-12-03 15:28:17 -05:00
@@ -73,6 +73,15 @@ typedef bstream_blob blob;
 #define bzero(A,B)  memset((A),0,(B))
 
 /*
+  Helper functions defined in stream_v1.c
+*/
+extern byte get_byte_ulong(unsigned long int value);
+extern byte get_byte_uint(unsigned int value);
+extern byte get_byte_ushort(short value);
+extern byte get_byte_short(short value);
+extern byte get_byte_size_t(size_t value);
+
+/*
  Carrier format
  --------------
 
@@ -170,20 +179,20 @@ byte biggest_fragment_prefix(blob *data)
     return FR_HUGE_MAX_HDR;
   }
 
-  hdr= len & FR_LEN_MASK;
+  hdr= get_byte_size_t(((len & FR_LEN_MASK) & 0xFF));
   prefix_end= data->begin + hdr;
 
   len >>= 6;
   if (len)
   {
-    hdr = FR_BIG|(len & FR_LEN_MASK);
+    hdr = FR_BIG|get_byte_size_t(((len & FR_LEN_MASK) & 0xFF));
     prefix_end= data->begin + ((len & FR_LEN_MASK) << FR_BIG_SHIFT);
   }
 
   len >>= 6;
   if (len)
   {
-    hdr = FR_HUGE|(len & FR_LEN_MASK);
+    hdr = FR_HUGE|get_byte_size_t(((len & FR_LEN_MASK) & 0xFF));
     prefix_end= data->begin + ((len & FR_LEN_MASK) << FR_HUGE_SHIFT);
   }
 
@@ -338,7 +347,7 @@ void reset_output_buffer(backup_stream *
   {
     for(i=0; i<4; ++i)
     {
-      *(s->buf.pos++)= (byte) (block_size & 0xFF);
+      *(s->buf.pos++)= get_byte_ulong((block_size & 0xFF));
       block_size >>= 8;
     }
 
@@ -356,7 +365,7 @@ void reset_output_buffer(backup_stream *
   if (s->state == FIRST_BLOCK)
   {
     ASSERT(s->init_block_count < 0xFF);
-    *(s->buf.pos++)= (byte) (s->init_block_count);
+    *(s->buf.pos++)= get_byte_short(s->init_block_count);
   }
 
   s->buf.header= s->buf.pos;

Thread
bk commit into 6.0 tree (cbell:1.2714)cbell3 Dec