Hi Ritheesh,
STATUS
------
Approved.
SUGGESTIONS
-----------
1. Remove backup_no_engine test and make it part of backup_errors one.
2. Simplify error suppression pattern.
3. Do SHOW WARNINGS after failed BACKUP.
DETAILS
-------
Ritheesh Vedire wrote:
> #At file:///home/rith/Work/MySQl/bug45587/ based on
> revid:charles.bell@stripped
>
> 2888 Ritheesh Vedire 2009-11-06
> BUG#45587: Backup of tables using a non-existent storage engine does not give
> warning/error
> @ mysql-test/suite/backup/r/backup_no_engine.result
> T
> @ mysql-test/suite/backup/t/backup_no_engine.test
> Test case suppresses errors in the Server Log file.
>
> modified:
> mysql-test/suite/backup/r/backup_no_engine.result
> mysql-test/suite/backup/t/backup_no_engine.test
> sql/si_objects.cc
...
> === modified file 'mysql-test/suite/backup/t/backup_no_engine.test'
> --- a/mysql-test/suite/backup/t/backup_no_engine.test 2009-06-18 11:28:01 +0000
> +++ b/mysql-test/suite/backup/t/backup_no_engine.test 2009-11-06 12:10:31 +0000
[1] Since this test becomes very short now, I suggest making it part of
backup_erros test.
> @@ -3,6 +3,10 @@
>
> --source include/not_embedded.inc
>
> +--echo Suppress this error in the server log
> +call mtr.add_suppression("Can't access storage engine of table `.*`.`.*`");
[2] I suggest simpler suppression pattern "Can't access storage engine of
table" (if it works).
> +--echo
> +
> # .frm file for a table using non-existent storage engine
> --let $table_def=$MYSQL_TEST_DIR/std_data/bug30938.frm
>
> @@ -20,21 +24,11 @@ copy_file $table_def $MYSQLD_DATADIR/db/
>
> SHOW TABLES IN db;
>
> -# backup test database, the table with no storage engine will be ignored
> +# backup test database, an error will be displayed
> +# as storage engine of the table is not identified
> --replace_column 1 #
> +--error ER_UNKNOWN_STORAGE_ENGINE
> BACKUP DATABASE db TO "db.backup";
>
[3] I suggest to do SHOW WARNINGS after failed BACKUP to see what errors
were pushed on error stack.
Rafal