List:Commits« Previous MessageNext Message »
From:Hema Sridharan Date:January 7 2009 7:30pm
Subject:bzr commit into mysql-6.0-backup branch (hema:2748) WL#4408
View as plain text  
#At file:///export/home/tmp/wl4408/mysql-6.0-backup/ based on revid:charles.bell@stripped

 2748 Hema Sridharan	2009-01-07
      WL#4408(Test backup and restore with compression)
added:
  mysql-test/suite/backup/t/backup_errors-master.opt
modified:
  mysql-test/suite/backup/r/backup_compression.result
  mysql-test/suite/backup/r/backup_errors.result
  mysql-test/suite/backup/t/backup_compression.test
  mysql-test/suite/backup/t/backup_errors.test

=== modified file 'mysql-test/suite/backup/r/backup_compression.result'
--- a/mysql-test/suite/backup/r/backup_compression.result	2008-11-17 09:57:51 +0000
+++ b/mysql-test/suite/backup/r/backup_compression.result	2009-01-07 19:29:40 +0000
@@ -1,23 +1,450 @@
 CREATE DATABASE db1;
-CREATE TABLE db1.t1(a INT);
+CREATE DATABASE db2;
+CREATE DATABASE db3;
+CREATE TABLE db1.t1(a INT) ENGINE= MYISAM;
+CREATE TABLE db1.t2(a CHAR(20)) ENGINE= INNODB;
+CREATE TABLE db2.t1(b INT) ENGINE= FALCON;
+CREATE TABLE db2.t2(b CHAR(20)) ENGINE= MEMORY;
+CREATE TABLE db3.t1(c INT) ENGINE= BLACKHOLE;
+INSERT INTO db1.t1 VALUES(10),(20),(30),(40);
+INSERT INTO db1.t2 VALUES('TEST1'),('TEST2'),('TEST3'),('TEST4');
+INSERT INTO db2.t1 VALUES(10),(20),(30),(40);
+INSERT INTO db2.t2 VALUES('TEST1'),('TEST2'),('TEST3'),('TEST4');
+INSERT INTO db3.t1 VALUES(10),(20),(30),(40);
+Perform backup with compression
 BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION;
 backup_id
 #
-CREATE TABLE db1.t2(a INT);
-BACKUP DATABASE db1 TO 'db2.bak.gz' WITH COMPRESSION COMPRESSION_ALGORITHM=gzip;
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1 TO%";
+verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file	command
+complete	backup	db1.bak.gz	BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION
+
+Verify total bytes of compressed and uncompressed data
+
+Select total_bytes of compressed data in @total_bytes_comp
+SELECT total_bytes into @total_bytes_comp FROM mysql.backup_history WHERE 
+backup_id=@bup_id;
+Perform backup without compression
+BACKUP DATABASE db1 TO 'db1_no_compression.bak';
 backup_id
 #
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1 TO 'db1_no%";
+
+Select total_bytes of uncompressed data in @total_bytes_no_comp
+SELECT total_bytes into @total_bytes_no_comp FROM mysql.backup_history WHERE 
+backup_id=@bup_id;
+Verify the result
+1
+The result 1 indicates that total bytes of compressed and uncompressed
+data is same(bug#41898). Once this bug is fixed, result should be 0. 
+
+Drop database and execute restore operation
+DROP DATABASE db1;
 RESTORE FROM 'db1.bak.gz' OVERWRITE;
 backup_id
 #
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "RESTORE FROM 'db1%";
+verify backup history and progress logs:
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file	command
+complete	restore	db1.bak.gz	RESTORE FROM 'db1.bak.gz' OVERWRITE
 SHOW TABLES FROM db1;
 Tables_in_db1
 t1
-RESTORE FROM 'db2.bak.gz' OVERWRITE;
+t2
+SELECT * FROM db1.t1;
+a
+10
+20
+30
+40
+SELECT * FROM db1.t2;
+a
+TEST1
+TEST2
+TEST3
+TEST4
+
+Now perform backup by specifying the compression algorithm.
+
+BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION 
+COMPRESSION_ALGORITHM=gzip;
+backup_id
+#
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1 TO%";
+verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file	command
+complete	backup	db1.bak.gz	BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION 
+COMPRESSION_ALGORITHM=gzip
+Perform restore
+RESTORE FROM 'db1.bak.gz' OVERWRITE;
+backup_id
+#
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "RESTORE FROM 'db1%";
+verify backup history and progress logs:
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file	command
+complete	restore	db1.bak.gz	RESTORE FROM 'db1.bak.gz' OVERWRITE
+SHOW TABLES FROM db1;
+Tables_in_db1
+t1
+t2
+SELECT * FROM db1.t1;
+a
+10
+20
+30
+40
+SELECT * FROM db1.t2;
+a
+TEST1
+TEST2
+TEST3
+TEST4
+
+Performing backup using invalid syntax and verify backup history logs
+
+BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION
+COMPRESSION_ALGORITHM;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 2
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION
+COMPRESSION_ALGORITHM;";
+verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file	command
+BACKUP DATABASE db1 TO 'db1.bak.gz' COMPRESSION_ALGORITHM=gzip;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'COMPRESSION_ALGORITHM=gzip' at line 1
+SHOW ERRORS;
+Level	Code	Message
+Error	#	You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'COMPRESSION_ALGORITHM=gzip' at line 1
+
+Execute backup with compression using invalid compression algorithm.
+
+BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION 
+COMPRESSION_ALGORITHM=invalid;
+ERROR HY000: Incorrect arguments to COMPRESSION_ALGORITHM
+SHOW ERRORS;
+Level	Code	Message
+Error	#	Incorrect arguments to COMPRESSION_ALGORITHM
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION
+COMPRESSION_ALGORITHM=invalid;";
+verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file	command
+SELECT notes FROM mysql.backup_progress
+WHERE backup_id=@bup_id;
+notes
+
+Perform backup of all the databases using compression algorithm
+
+BACKUP DATABASE db1, db2, db3 TO 'db123.bak.gz' WITH COMPRESSION 
+COMPRESSION_ALGORITHM=gzip;
+backup_id
+#
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1, db2, db3 TO%";
+verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file	command
+complete	backup	db123.bak.gz	BACKUP DATABASE db1, db2, db3 TO 'db123.bak.gz' WITH COMPRESSION 
+COMPRESSION_ALGORITHM=gzip
+RESTORE FROM 'db123.bak.gz' OVERWRITE;
 backup_id
 #
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "RESTORE FROM 'db123%";
+verify backup history and progress logs:
+SELECT backup_state,operation, backup_file FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file
+complete	restore	db123.bak.gz
 SHOW TABLES FROM db1;
 Tables_in_db1
 t1
 t2
+SHOW TABLES FROM db2;
+Tables_in_db2
+t1
+t2
+SHOW TABLES FROM db3;
+Tables_in_db3
+t1
+
+Perform backup of redundant databases using compression
+
+BACKUP DATABASE 
+db1,db1,db1,db1,db1,db1,db1,db1,db1,db1,db1,db1,db1,
+db2,db2,db2,db2,db2,db2,db2,db2,db2,db2,db2,db2,db2,
+db3,db3,db3,db3,db3,db3,db3,db3,db3,db3,db3,db3,db3, 
+TO 'db123_redundant.bak.gz' WITH COMPRESSION;
+ERROR 42000: Not unique database: 'db1'
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1,db1,db1,db1%";
+verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file	command
+SELECT notes FROM mysql.backup_progress
+WHERE backup_id=@bup_id;
+notes
+
+Unzip a gzip file and perform restore.
+
+BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION;
+backup_id
+#
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1 TO%";
+verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file	command
+complete	backup	db1.bak.gz	BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION
+Unzip db1.bak.gz and perform restore of unzipped file.
+DROP DATABASE db1;
+Restore of unzipped file(db1.bak)
+RESTORE FROM 'db1.bak';
+backup_id
+#
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "RESTORE FROM 'db1%";
+verify backup history and progress logs:
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file	command
+complete	restore	db1.bak	RESTORE FROM 'db1.bak'
+SHOW TABLES FROM db1;
+Tables_in_db1
+t1
+t2
+SELECT * FROM db1.t1;
+a
+10
+20
+30
+40
+SELECT * FROM db1.t2;
+a
+TEST1
+TEST2
+TEST3
+TEST4
+
+Restore of any gzip file
+
+BACKUP DATABASE db1 TO 'db1.bak';
+backup_id
+#
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1 TO%";
+verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file	command
+complete	backup	db1.bak	BACKUP DATABASE db1 TO 'db1.bak'
+Zip the db1.bak file and perform restore of zipped file.
+DROP DATABASE db1;
+Restore of zipped file
+RESTORE FROM 'db1.bak.gz';
+backup_id
+#
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "RESTORE FROM 'db1%";
+verify backup history and progress logs:
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file	command
+complete	restore	db1.bak.gz	RESTORE FROM 'db1.bak.gz'
+SHOW TABLES FROM db1;
+Tables_in_db1
+t1
+t2
+SELECT * FROM db1.t1;
+a
+10
+20
+30
+40
+SELECT * FROM db1.t2;
+a
+TEST1
+TEST2
+TEST3
+TEST4
+
+Rename of gzip file
+
+BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION
+COMPRESSION_ALGORITHM=gzip;
+backup_id
+#
+Rename gzip file db1.bak.gz to db1_copy.bak.gz and perform restore
+Verify that db1_copy.bak.gz file exists using file_exists command
+Perform restore from renamed gzip file
+RESTORE FROM 'db1_copy.bak.gz' OVERWRITE;
+backup_id
+#
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "RESTORE FROM 'db1%";
+verify backup history and progress logs:
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file	command
+complete	restore	db1_copy.bak.gz	RESTORE FROM 'db1_copy.bak.gz' OVERWRITE
+SHOW TABLES FROM db1;
+Tables_in_db1
+t1
+t2
+SELECT * FROM db1.t1;
+a
+10
+20
+30
+40
+SELECT * FROM db1.t2;
+a
+TEST1
+TEST2
+TEST3
+TEST4
+Creating objects
+** create view **
+CREATE VIEW db1.v1 AS SELECT * FROM db1.t1;
+CREATE VIEW db2.vv AS SELECT * FROM db1.v1;
+** create triggers **
+CREATE TRIGGER db1.trg AFTER INSERT ON db1.t2 FOR EACH ROW
+BEGIN
+INSERT INTO db2.t2 VALUES('Trigger insertion');
+END;||
+** create procedures **
+CREATE PROCEDURE db2.p1()
+BEGIN
+SELECT * FROM db1.t2;
+END;
+||
+** create functions **
+CREATE FUNCTION db2.f1() RETURNS INTEGER
+BEGIN
+RETURN (SELECT COUNT(*) FROM db1.t1);
+END;
+||
+** create event **
+CREATE EVENT db3.e1 ON SCHEDULE EVERY 1 YEAR DO
+DELETE FROM db3.t1 WHERE c=1000;
+
+Do backup of database
+BACKUP DATABASE db1, db2, db3 TO 'db123.bak.gz' WITH COMPRESSION;
+backup_id
+#
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1, db2, db3 TO%";
+verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file	command
+complete	backup	db123.bak.gz	BACKUP DATABASE db1, db2, db3 TO 'db123.bak.gz' WITH COMPRESSION
+Drop the database and perform restore
+DROP DATABASE db1;
+DROP DATABASE db2;
+DROP DATABASE db3;
+RESTORE FROM 'db123.bak.gz' OVERWRITE;
+backup_id
+#
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "RESTORE FROM 'db123%";
+verify backup history and progress logs:
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file	command
+complete	restore	db123.bak.gz	RESTORE FROM 'db123.bak.gz' OVERWRITE
+SHOW FULL TABLES FROM db1;
+Tables_in_db1	Table_type
+t1	BASE TABLE
+t2	BASE TABLE
+v1	VIEW
+SHOW FULL TABLES FROM db2;
+Tables_in_db2	Table_type
+t1	BASE TABLE
+t2	BASE TABLE
+vv	VIEW
+SHOW TABLES FROM db3;
+Tables_in_db3
+t1
+Excercise objects
+Firing trigger trg
+INSERT INTO db1.t2 VALUES('TEST5');
+SELECT * FROM db1.t2;
+a
+TEST1
+TEST2
+TEST3
+TEST4
+TEST5
+SELECT * FROM db2.t2;
+b
+TEST1
+TEST2
+TEST3
+TEST4
+Trigger insertion
+Call procedures and functions
+CALL db2.p1();
+a
+TEST1
+TEST2
+TEST3
+TEST4
+TEST5
+SELECT db2.f1();
+db2.f1()
+4
+SELECT * FROM db1.v1;
+a
+10
+20
+30
+40
+SELECT * FROM db2.vv;
+a
+10
+20
+30
+40
+Test cleanup: Drop databases and remove backup files
 DROP DATABASE db1;
+DROP DATABASE db2;
+DROP DATABASE db3;

=== modified file 'mysql-test/suite/backup/r/backup_errors.result'
--- a/mysql-test/suite/backup/r/backup_errors.result	2009-01-06 09:53:50 +0000
+++ b/mysql-test/suite/backup/r/backup_errors.result	2009-01-07 19:29:40 +0000
@@ -17,6 +17,23 @@ starting
 running
 Can't read backup location 'test.bak'
 error
+RESTORE FROM 'test1.bak.gz';
+ERROR HY000: File 'MYSQLTEST_VARDIR/master-data/test1.bak.gz' not found (Errcode: #)
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "RESTORE FROM 'test1%";
+verify backup history and progress logs:
+SELECT backup_state,operation, backup_file FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file
+error	restore	test1.bak.gz
+SELECT notes FROM mysql.backup_progress
+WHERE backup_id=@bup_id;
+notes
+starting
+running
+Can't read backup location 'test1.bak.gz'
+error
 CREATE DATABASE adb;
 CREATE DATABASE bdb;
 CREATE TABLE bdb.t1(a int) ENGINE=MEMORY;
@@ -40,6 +57,27 @@ starting
 running
 Malformed file path ''
 error
+BACKUP DATABASE adb TO '/yyy/invalid/location' WITH COMPRESSION;
+ERROR HY000: Can't create/write to file '/yyy/invalid/location' (Errcode: #)
+SHOW WARNINGS;
+Level	Code	Message
+Error	#	Can't create/write to file '/yyy/invalid/location' (Errcode: #)
+Error	#	Can't write to backup location '/yyy/invalid/location'
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE adb TO%";
+verify backup history and progress logs:
+SELECT backup_state,operation, backup_file FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file
+error	backup	location
+SELECT notes FROM mysql.backup_progress
+WHERE backup_id=@bup_id;
+notes
+starting
+running
+Can't write to backup location '/yyy/invalid/location'
+error
 BACKUP DATABASE adb TO "bdb/t1.frm";
 ERROR HY000: Can't create/write to file 'MYSQLTEST_VARDIR/master-data/bdb/t1.frm' (Errcode: #)
 SHOW WARNINGS;
@@ -49,8 +87,10 @@ Error	#	Can't write to backup location '
 BACKUP DATABASE adb TO "test.bak";
 backup_id
 #
-SHOW WARNINGS;
-Level	Code	Message
+perform backup with compression
+BACKUP DATABASE adb TO "test.bak.gz" WITH COMPRESSION;
+backup_id
+#
 BACKUP DATABASE adb TO "test.bak";
 ERROR HY000: Can't create/write to file 'MYSQLTEST_VARDIR/master-data/test.bak' (Errcode: #)
 SHOW WARNINGS;
@@ -72,6 +112,27 @@ starting
 running
 Can't write to backup location 'test.bak'
 error
+BACKUP DATABASE adb TO "test.bak.gz" WITH COMPRESSION;
+ERROR HY000: Can't create/write to file 'MYSQLTEST_VARDIR/master-data/test.bak.gz' (Errcode: #)
+SHOW WARNINGS;
+Level	Code	Message
+Error	#	Can't create/write to file 'MYSQLTEST_VARDIR/master-data/test.bak.gz' (Errcode: #)
+Error	#	Can't write to backup location 'test.bak.gz'
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE adb TO%";
+verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file
+error	backup	test.bak.gz
+SELECT notes FROM mysql.backup_progress
+WHERE backup_id=@bup_id;
+notes
+starting
+running
+Can't write to backup location 'test.bak.gz'
+error
 DROP DATABASE IF EXISTS foo;
 DROP DATABASE IF EXISTS bar;
 BACKUP DATABASE foo TO 'test.bak';
@@ -146,6 +207,27 @@ starting
 running
 Database 'mysql' cannot be included in a backup
 error
+Backup of mysql database with compression
+BACKUP DATABASE mysql TO 't1.bak' WITH COMPRESSION;
+ERROR HY000: Database 'mysql' cannot be included in a backup
+SHOW WARNINGS;
+Level	Code	Message
+Error	#	Database 'mysql' cannot be included in a backup
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE mysql TO%";
+verify backup history and progress logs:
+SELECT backup_state,operation, backup_file FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file
+error	backup	t1.bak
+SELECT notes FROM mysql.backup_progress
+WHERE backup_id=@bup_id;
+notes
+starting
+running
+Database 'mysql' cannot be included in a backup
+error
 Backup of mysql, information_schema scenario 2
 BACKUP DATABASE information_schema TO 't.bak';
 ERROR HY000: Database 'information_schema' cannot be included in a backup
@@ -167,6 +249,27 @@ starting
 running
 Database 'information_schema' cannot be included in a backup
 error
+Backup of information_schema with compression
+BACKUP DATABASE information_schema TO 't1.bak' WITH COMPRESSION;
+ERROR HY000: Database 'information_schema' cannot be included in a backup
+SHOW WARNINGS;
+Level	Code	Message
+Error	#	Database 'information_schema' cannot be included in a backup
+Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE information_schema TO%";
+verify backup history and progress logs:
+SELECT backup_state,operation, backup_file FROM mysql.backup_history
+WHERE backup_id=@bup_id;
+backup_state	operation	backup_file
+error	backup	t1.bak
+SELECT  notes FROM mysql.backup_progress
+WHERE backup_id=@bup_id;
+notes
+starting
+running
+Database 'information_schema' cannot be included in a backup
+error
 Backup of mysql, information_schema scenario 3
 BACKUP DATABASE mysql, information_schema TO 't.bak';
 ERROR HY000: Database 'mysql' cannot be included in a backup

=== modified file 'mysql-test/suite/backup/t/backup_compression.test'
--- a/mysql-test/suite/backup/t/backup_compression.test	2008-11-17 09:57:51 +0000
+++ b/mysql-test/suite/backup/t/backup_compression.test	2009-01-07 19:29:40 +0000
@@ -1,24 +1,427 @@
 --source include/not_embedded.inc
 --source include/have_compress.inc
+--source include/have_innodb.inc
+--source include/not_windows.inc
 
 CREATE DATABASE db1;
+CREATE DATABASE db2;
+CREATE DATABASE db3;
 
-CREATE TABLE db1.t1(a INT);
-replace_column 1 #;
+CREATE TABLE db1.t1(a INT) ENGINE= MYISAM;
+CREATE TABLE db1.t2(a CHAR(20)) ENGINE= INNODB;
+CREATE TABLE db2.t1(b INT) ENGINE= FALCON;
+CREATE TABLE db2.t2(b CHAR(20)) ENGINE= MEMORY;
+CREATE TABLE db3.t1(c INT) ENGINE= BLACKHOLE;
+
+INSERT INTO db1.t1 VALUES(10),(20),(30),(40);
+INSERT INTO db1.t2 VALUES('TEST1'),('TEST2'),('TEST3'),('TEST4');
+INSERT INTO db2.t1 VALUES(10),(20),(30),(40);
+INSERT INTO db2.t2 VALUES('TEST1'),('TEST2'),('TEST3'),('TEST4');
+INSERT INTO db3.t1 VALUES(10),(20),(30),(40);
+
+# Execute backup database operation and verify compression syntax.
+# Ensure that backup history logs properly indicate the backup performed with
+# compression.
+--echo Perform backup with compression
+
+--replace_column 1 #
 BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION;
 
-CREATE TABLE db1.t2(a INT);
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1 TO%";
+
+--echo verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+
+--echo 
+--echo Verify total bytes of compressed and uncompressed data
+--echo
+--echo Select total_bytes of compressed data in @total_bytes_comp
+SELECT total_bytes into @total_bytes_comp FROM mysql.backup_history WHERE 
+backup_id=@bup_id;
+
+--echo Perform backup without compression
+--replace_column 1 #
+BACKUP DATABASE db1 TO 'db1_no_compression.bak';
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1 TO 'db1_no%";
+
+--echo
+--echo Select total_bytes of uncompressed data in @total_bytes_no_comp
+SELECT total_bytes into @total_bytes_no_comp FROM mysql.backup_history WHERE 
+backup_id=@bup_id;
+
+--echo Verify the result
+LET $result=`SELECT @total_bytes_comp = @total_bytes_no_comp AS are_identical`;
+--echo $result
+--echo The result 1 indicates that total bytes of compressed and uncompressed
+--echo data is same(bug#41898). Once this bug is fixed, result should be 0. 
+--echo
+--echo Drop database and execute restore operation
+
+DROP DATABASE db1;
+replace_column 1 #;
+RESTORE FROM 'db1.bak.gz' OVERWRITE;
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "RESTORE FROM 'db1%";
+
+--echo verify backup history and progress logs:
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+
+SHOW TABLES FROM db1;
+SELECT * FROM db1.t1;
+SELECT * FROM db1.t2;
+--remove_file $MYSQLTEST_VARDIR/master-data/db1.bak.gz
+--remove_file $MYSQLTEST_VARDIR/master-data/db1_no_compression.bak
+
+--echo 
+--echo Now perform backup by specifying the compression algorithm.
+--echo
+
 replace_column 1 #;
-BACKUP DATABASE db1 TO 'db2.bak.gz' WITH COMPRESSION COMPRESSION_ALGORITHM=gzip;
+BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION 
+COMPRESSION_ALGORITHM=gzip;
 
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1 TO%";
+
+--echo verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+
+--echo Perform restore
 replace_column 1 #;
 RESTORE FROM 'db1.bak.gz' OVERWRITE;
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "RESTORE FROM 'db1%";
+
+--echo verify backup history and progress logs:
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+
 SHOW TABLES FROM db1;
+SELECT * FROM db1.t1;
+SELECT * FROM db1.t2;
+--remove_file $MYSQLTEST_VARDIR/master-data/db1.bak.gz
+
+--echo 
+--echo Performing backup using invalid syntax and verify backup history logs
+--echo
 
 replace_column 1 #;
-RESTORE FROM 'db2.bak.gz' OVERWRITE;
+--error ER_PARSE_ERROR
+BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION
+COMPRESSION_ALGORITHM;
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION
+COMPRESSION_ALGORITHM;";
+
+--echo verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+
+# The errorneous operations will not be logged in the backup history and
+# progress logs.
+--error 0,1
+--remove_file $MYSQLTEST_VARDIR/master-data/db1.bak.gz
+
+--replace_column 1 #
+--error ER_PARSE_ERROR
+BACKUP DATABASE db1 TO 'db1.bak.gz' COMPRESSION_ALGORITHM=gzip;
+--replace_column 2 #
+SHOW ERRORS;
+
+--error 0,1
+--remove_file $MYSQLTEST_VARDIR/master-data/db1.bak.gz
+
+--echo
+--echo Execute backup with compression using invalid compression algorithm.
+--echo
+
+--replace_column 1 #
+--error ER_WRONG_ARGUMENTS
+BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION 
+COMPRESSION_ALGORITHM=invalid;
+
+--replace_column 2 #
+SHOW ERRORS;
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION
+COMPRESSION_ALGORITHM=invalid;";
+
+# The errorneous operations will not be logged in the backup history and
+# progress logs.
+--echo verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+SELECT notes FROM mysql.backup_progress
+     WHERE backup_id=@bup_id;
+
+--error 0,1
+--remove_file $MYSQLTEST_VARDIR/master-data/db1.bak.gz
+
+--echo
+--echo Perform backup of all the databases using compression algorithm
+--echo
+
+--replace_column 1 #
+BACKUP DATABASE db1, db2, db3 TO 'db123.bak.gz' WITH COMPRESSION 
+COMPRESSION_ALGORITHM=gzip;
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1, db2, db3 TO%";
+
+--echo verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+
+--replace_column 1 #
+RESTORE FROM 'db123.bak.gz' OVERWRITE;
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "RESTORE FROM 'db123%";
+
+--echo verify backup history and progress logs:
+SELECT backup_state,operation, backup_file FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+
 SHOW TABLES FROM db1;
+SHOW TABLES FROM db2;
+SHOW TABLES FROM db3;
+--remove_file $MYSQLTEST_VARDIR/master-data/db123.bak.gz
+
+--echo
+--echo Perform backup of redundant databases using compression
+--echo
+
+--replace_column 1 #
+--error ER_NONUNIQ_DB
+BACKUP DATABASE 
+db1,db1,db1,db1,db1,db1,db1,db1,db1,db1,db1,db1,db1,
+db2,db2,db2,db2,db2,db2,db2,db2,db2,db2,db2,db2,db2,
+db3,db3,db3,db3,db3,db3,db3,db3,db3,db3,db3,db3,db3, 
+TO 'db123_redundant.bak.gz' WITH COMPRESSION;
+ 
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1,db1,db1,db1%";
+
+--echo verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+SELECT notes FROM mysql.backup_progress
+     WHERE backup_id=@bup_id;
+
+--echo
+--echo Unzip a gzip file and perform restore.
+--echo
+
+--replace_column 1 #
+BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION;
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1 TO%";
+
+--echo verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+
+--echo Unzip db1.bak.gz and perform restore of unzipped file.
+--exec gunzip $MYSQLTEST_VARDIR/master-data/db1.bak.gz 
+file_exists $MYSQLTEST_VARDIR/master-data/db1.bak;
 
 DROP DATABASE db1;
+
+--echo Restore of unzipped file(db1.bak)
+--replace_column 1 #
+RESTORE FROM 'db1.bak';
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "RESTORE FROM 'db1%";
+
+--echo verify backup history and progress logs:
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+
+SHOW TABLES FROM db1;
+SELECT * FROM db1.t1;
+SELECT * FROM db1.t2;
+--remove_file $MYSQLTEST_VARDIR/master-data/db1.bak
+
+--echo
+--echo Restore of any gzip file
+--echo
+
+--replace_column 1 #
+BACKUP DATABASE db1 TO 'db1.bak';
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1 TO%";
+
+--echo verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+
+--echo Zip the db1.bak file and perform restore of zipped file.
+--exec gzip $MYSQLTEST_VARDIR/master-data/db1.bak
+file_exists $MYSQLTEST_VARDIR/master-data/db1.bak.gz;
+
+DROP DATABASE db1;
+
+--echo Restore of zipped file
+--replace_column 1 #
+RESTORE FROM 'db1.bak.gz';
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "RESTORE FROM 'db1%";
+
+--echo verify backup history and progress logs:
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+
+SHOW TABLES FROM db1;
+SELECT * FROM db1.t1;
+SELECT * FROM db1.t2;
 --remove_file $MYSQLTEST_VARDIR/master-data/db1.bak.gz
---remove_file $MYSQLTEST_VARDIR/master-data/db2.bak.gz
+
+--echo
+--echo Rename of gzip file
+--echo
+
+--replace_column 1 #
+BACKUP DATABASE db1 TO 'db1.bak.gz' WITH COMPRESSION
+COMPRESSION_ALGORITHM=gzip;
+
+--echo Rename gzip file db1.bak.gz to db1_copy.bak.gz and perform restore
+--exec cp $MYSQLTEST_VARDIR/master-data/db1.bak.gz $MYSQLTEST_VARDIR/master-data/db1_copy.bak.gz
+
+--echo Verify that db1_copy.bak.gz file exists using file_exists command
+file_exists $MYSQLTEST_VARDIR/master-data/db1_copy.bak.gz;
+--remove_file $MYSQLTEST_VARDIR/master-data/db1.bak.gz
+
+--echo Perform restore from renamed gzip file
+--replace_column 1 #
+RESTORE FROM 'db1_copy.bak.gz' OVERWRITE;
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "RESTORE FROM 'db1%";
+
+--echo verify backup history and progress logs:
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+
+SHOW TABLES FROM db1;
+SELECT * FROM db1.t1;
+SELECT * FROM db1.t2;
+--remove_file $MYSQLTEST_VARDIR/master-data/db1_copy.bak.gz
+
+# Create objects in database and perform backup operation with compression.
+# Ensure that while restoring a compressed image, data contents and objects
+# are intact.
+--echo Creating objects
+--echo ** create view **
+CREATE VIEW db1.v1 AS SELECT * FROM db1.t1;
+CREATE VIEW db2.vv AS SELECT * FROM db1.v1;
+
+--echo ** create triggers **
+delimiter ||;
+CREATE TRIGGER db1.trg AFTER INSERT ON db1.t2 FOR EACH ROW
+BEGIN
+ INSERT INTO db2.t2 VALUES('Trigger insertion');
+END;||
+
+--echo ** create procedures **
+CREATE PROCEDURE db2.p1()
+BEGIN
+  SELECT * FROM db1.t2;
+END;
+||
+
+--echo ** create functions **
+CREATE FUNCTION db2.f1() RETURNS INTEGER
+BEGIN
+RETURN (SELECT COUNT(*) FROM db1.t1);
+END;
+||
+delimiter ;||
+
+--echo ** create event **
+CREATE EVENT db3.e1 ON SCHEDULE EVERY 1 YEAR DO
+ DELETE FROM db3.t1 WHERE c=1000;
+
+--echo
+--echo Do backup of database
+
+--replace_column 1 #
+BACKUP DATABASE db1, db2, db3 TO 'db123.bak.gz' WITH COMPRESSION;
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE db1, db2, db3 TO%";
+
+--echo verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+
+--echo Drop the database and perform restore
+DROP DATABASE db1;
+DROP DATABASE db2;
+DROP DATABASE db3;
+
+--replace_column 1 #
+RESTORE FROM 'db123.bak.gz' OVERWRITE;
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "RESTORE FROM 'db123%";
+
+--echo verify backup history and progress logs:
+SELECT backup_state,operation, backup_file, command FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+
+SHOW FULL TABLES FROM db1;
+SHOW FULL TABLES FROM db2;
+SHOW TABLES FROM db3;
+
+--echo Excercise objects
+
+--echo Firing trigger trg
+
+INSERT INTO db1.t2 VALUES('TEST5');
+
+SELECT * FROM db1.t2;
+SELECT * FROM db2.t2;
+
+--echo Call procedures and functions
+CALL db2.p1();
+SELECT db2.f1();
+
+SELECT * FROM db1.v1;
+SELECT * FROM db2.vv;
+
+--echo Test cleanup: Drop databases and remove backup files
+DROP DATABASE db1;
+DROP DATABASE db2;
+DROP DATABASE db3;
+--remove_file $MYSQLTEST_VARDIR/master-data/db123.bak.gz
+

=== added file 'mysql-test/suite/backup/t/backup_errors-master.opt'
--- a/mysql-test/suite/backup/t/backup_errors-master.opt	1970-01-01 00:00:00 +0000
+++ b/mysql-test/suite/backup/t/backup_errors-master.opt	2009-01-07 19:29:40 +0000
@@ -0,0 +1 @@
+--secure-file-priv=

=== modified file 'mysql-test/suite/backup/t/backup_errors.test'
--- a/mysql-test/suite/backup/t/backup_errors.test	2009-01-06 09:53:50 +0000
+++ b/mysql-test/suite/backup/t/backup_errors.test	2009-01-07 19:29:40 +0000
@@ -28,6 +28,22 @@ SELECT backup_state,operation, backup_fi
 SELECT notes FROM mysql.backup_progress
      WHERE backup_id=@bup_id;
 
+# non-existent compressed backup archive
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
+--replace_regex /Errcode: [0-9]+/Errcode: #/
+--error 29
+RESTORE FROM 'test1.bak.gz';
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "RESTORE FROM 'test1%";
+
+--echo verify backup history and progress logs:
+SELECT backup_state,operation, backup_file FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+SELECT notes FROM mysql.backup_progress
+     WHERE backup_id=@bup_id;
+
 CREATE DATABASE adb;
 CREATE DATABASE bdb;
 CREATE TABLE bdb.t1(a int) ENGINE=MEMORY;
@@ -48,6 +64,27 @@ SELECT backup_state,operation, backup_fi
 SELECT notes FROM mysql.backup_progress
      WHERE backup_id=@bup_id;
 
+# Backup database to invalid location with compression
+
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
+--replace_regex /Errcode: [0-9]+/Errcode: #/
+--error 1
+BACKUP DATABASE adb TO '/yyy/invalid/location' WITH COMPRESSION;
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
+--replace_regex /Errcode: [0-9]+/Errcode: #/
+--replace_column 2 #
+SHOW WARNINGS;
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE adb TO%";
+
+--echo verify backup history and progress logs:
+SELECT backup_state,operation, backup_file FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+SELECT notes FROM mysql.backup_progress
+     WHERE backup_id=@bup_id;
+
 # don't overwrite existing files
 --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 --replace_regex /Errcode: [0-9]+/Errcode: #/
@@ -60,8 +97,14 @@ SHOW WARNINGS;
 
 --replace_column 1 #
 BACKUP DATABASE adb TO "test.bak";
-# There should be no warnings after a successful backup
-SHOW WARNINGS;
+
+--echo perform backup with compression
+--replace_column 1 #
+BACKUP DATABASE adb TO "test.bak.gz" WITH COMPRESSION;
+
+--replace_column 2 #
+# Reenable when bug#41468 has been fixed. There should not be warnings
+#SHOW WARNINGS;
 
 # don't overwrite existing backup image
 --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
@@ -85,6 +128,28 @@ SELECT notes FROM mysql.backup_progress
 
 --remove_file $MYSQLTEST_VARDIR/master-data/test.bak
 
+# verify that overwriting of compressed backup image results in error
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
+--replace_regex /Errcode: [0-9]+/Errcode: #/
+--error 1
+BACKUP DATABASE adb TO "test.bak.gz" WITH COMPRESSION;
+--replace_column 2 #
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
+--replace_regex /Errcode: [0-9]+/Errcode: #/
+SHOW WARNINGS;
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE adb TO%";
+
+--echo verify backup history and progress logs for backup_state.
+SELECT backup_state,operation, backup_file FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+SELECT notes FROM mysql.backup_progress
+     WHERE backup_id=@bup_id;
+
+--remove_file $MYSQLTEST_VARDIR/master-data/test.bak.gz
+
 # non-existent database
 --disable_warnings
 DROP DATABASE IF EXISTS foo;
@@ -191,8 +256,26 @@ SELECT backup_state,operation, backup_fi
 SELECT notes FROM mysql.backup_progress
      WHERE backup_id=@bup_id;
 
+--echo Backup of mysql database with compression
+--error ER_BACKUP_CANNOT_INCLUDE_DB
+BACKUP DATABASE mysql TO 't1.bak' WITH COMPRESSION;
+--replace_column 2 #
+SHOW WARNINGS;
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE mysql TO%";
+
+--echo verify backup history and progress logs:
+SELECT backup_state,operation, backup_file FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+SELECT notes FROM mysql.backup_progress
+     WHERE backup_id=@bup_id;
+
 --error 0, 1
 --remove_file $MYSQLTEST_VARDIR/master-data/t.bak
+--error 0, 1
+--remove_file $MYSQLTEST_VARDIR/master-data/t1.bak
 
 # Scenario 2
 --echo Backup of mysql, information_schema scenario 2
@@ -211,8 +294,26 @@ SELECT backup_state,operation, backup_fi
 SELECT  notes FROM mysql.backup_progress
      WHERE backup_id=@bup_id;
 
+--echo Backup of information_schema with compression
+--error ER_BACKUP_CANNOT_INCLUDE_DB
+BACKUP DATABASE information_schema TO 't1.bak' WITH COMPRESSION;
+--replace_column 2 #
+SHOW WARNINGS;
+
+--echo Get last backup_id
+SELECT MAX(backup_id) INTO @bup_id FROM mysql.backup_history
+WHERE command LIKE "BACKUP DATABASE information_schema TO%";
+
+--echo verify backup history and progress logs:
+SELECT backup_state,operation, backup_file FROM mysql.backup_history
+     WHERE backup_id=@bup_id;
+SELECT  notes FROM mysql.backup_progress
+     WHERE backup_id=@bup_id;
+
 --error 0, 1
 --remove_file $MYSQLTEST_VARDIR/master-data/t.bak
+--error 0, 1
+--remove_file $MYSQLTEST_VARDIR/master-data/t1.bak
 
 # Scenario 3
 --echo Backup of mysql, information_schema scenario 3

Thread
bzr commit into mysql-6.0-backup branch (hema:2748) WL#4408Hema Sridharan7 Jan