Good to push.
Rafal
Oystein Grovlen wrote:
> #At file:///export/home/tmp/oysteing/mysql/mysql-6.0-backup-review/
>
> 2708 Oystein Grovlen 2008-10-17
> BUG#34205 Backup: restore fails if Falcon and no autocommit
>
> Add test case to cover this bug report.
> (It is not possible to repeat bug anymore)
> modified:
> mysql-test/suite/backup/r/backup_commit_restore.result
> mysql-test/suite/backup/t/backup_commit_restore.test
>
> per-file messages:
> mysql-test/suite/backup/r/backup_commit_restore.result
> Updated result file
> mysql-test/suite/backup/t/backup_commit_restore.test
> Check that it is possible to drop a table after a restore when autocommit is off
> and backup occurred earlier in same session.
>
> Also added missing engine type for table t4. (May have omitted
> originally because of this bug.)
> === modified file 'mysql-test/suite/backup/r/backup_commit_restore.result'
>
> === modified file 'mysql-test/suite/backup/r/backup_commit_restore.result'
> --- a/mysql-test/suite/backup/r/backup_commit_restore.result 2008-10-07 17:15:44
> +0000
> +++ b/mysql-test/suite/backup/r/backup_commit_restore.result 2008-10-17 14:28:20
> +0000
> @@ -81,7 +81,7 @@
> a3
> COMMIT;
> SET @@autocommit=0;
> -CREATE TABLE t4 (s1 CHAR(2));
> +CREATE TABLE t4 (s1 CHAR(2)) ENGINE=falcon;
> INSERT INTO t1 VALUES ('a4');
> INSERT INTO t2 VALUES ('a4');
> INSERT INTO t3 VALUES ('a4');
> @@ -188,10 +188,12 @@
> a5
> COMMIT;
> SET @@autocommit=1;
> +CREATE TABLE t5 (s1 CHAR(2)) ENGINE=falcon;
> INSERT INTO t1 VALUES ('a6');
> INSERT INTO t2 VALUES ('a6');
> INSERT INTO t3 VALUES ('a6');
> INSERT INTO t4 VALUES ('a6');
> +INSERT INTO t5 VALUES ('a6');
> BACKUP DATABASE commit_test TO '86';
> backup_id
> #
> @@ -199,6 +201,7 @@
> RESTORE FROM '86';
> backup_id
> #
> +DROP TABLE t5;
> SELECT * FROM t1;
> s1
> a1
>
> === modified file 'mysql-test/suite/backup/t/backup_commit_restore.test'
> --- a/mysql-test/suite/backup/t/backup_commit_restore.test 2008-10-07 17:15:44 +0000
> +++ b/mysql-test/suite/backup/t/backup_commit_restore.test 2008-10-17 14:28:20 +0000
> @@ -1,5 +1,6 @@
> --source include/have_innodb.inc
> --source include/not_embedded.inc
> +--source include/have_falcon.inc
>
> # Test that it is not possible to rollback restore. That is, that an
> # automatic commit is performed as part of restore. This test both
> @@ -70,7 +71,7 @@
>
> # Test using InnoDB, Memory, MyISAM and Falcon (Consistent Snapshot)
> SET @@autocommit=0;
> -CREATE TABLE t4 (s1 CHAR(2));
> +CREATE TABLE t4 (s1 CHAR(2)) ENGINE=falcon;
> INSERT INTO t1 VALUES ('a4');
> INSERT INTO t2 VALUES ('a4');
> INSERT INTO t3 VALUES ('a4');
> @@ -120,10 +121,12 @@
>
> # Test doing backup with auto-commit on and restore with auto-commit off
> SET @@autocommit=1;
> +CREATE TABLE t5 (s1 CHAR(2)) ENGINE=falcon;
> INSERT INTO t1 VALUES ('a6');
> INSERT INTO t2 VALUES ('a6');
> INSERT INTO t3 VALUES ('a6');
> INSERT INTO t4 VALUES ('a6');
> +INSERT INTO t5 VALUES ('a6');
>
> replace_column 1 #;
> BACKUP DATABASE commit_test TO '86';
> @@ -132,6 +135,9 @@
> replace_column 1 #;
> RESTORE FROM '86';
>
> +#Test of scenario from BUG#34205
> +DROP TABLE t5;
> +
> SELECT * FROM t1;
> SELECT * FROM t2;
> SELECT * FROM t3;
>
>