mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 04:53:01 +01:00
eb18f93a78
Previously we only stored the first given error (the error sent to the client) include/mysys_err.h: Moved ER_FILENOTFOUND last to avoid getting 'error 0' mysql-test/r/backup.result: More warnings from in case of errors mysql-test/r/innodb.result: More warnings from in case of errors mysql-test/r/key_cache.result: More warnings from in case of errors mysql-test/r/myisam.result: More warnings from in case of errors mysql-test/r/preload.result: More warnings from in case of errors mysql-test/r/repair.result: More warnings from in case of errors mysql-test/r/rpl_failed_optimize.result: More warnings from in case of errors mysql-test/r/subselect.result: More warnings from in case of errors mysql-test/t/backup.test: Portability fix mysql-test/t/innodb.test: Avoid some warnings mysql-test/t/myisam.test: Portability fix mysql-test/t/rpl_rotate_logs.test: Portablitiy fix mysys/errors.c: Move ER_FILENOTFOUND last to avoid error 0 sql/mysql_priv.h: Indentation change sql/mysqld.cc: Save all given errors for SHOW ERRORS sql/protocol.cc: Store new errors for SHOW ERROR (Ignore those that are already reported with my_error()) sql/sql_class.cc: More errors with SHOW ERROR sql/sql_class.h: More errors with SHOW ERROR sql/sql_error.cc: More errors with SHOW ERROR sql/sql_parse.cc: Temporary fix: Don't give error for the to-be-removed 'pre-open tables code' sql/sql_show.cc: More debugging Don't register errors while populating schema tables. (If we do, we get a LOT of warnings from information_schema.test) sql/sql_table.cc: Don't register errors from handler in drop table (as we already do it the upper level DROP TABLE code) Don't register errors for 'restore_table' as in most cases the table doesn't exists sql/sql_union.cc: Use file->write_row() instead of 'write_record'. This gives us easer to handle error messages and is faster than the old version
54 lines
1.4 KiB
Text
54 lines
1.4 KiB
Text
#
|
|
# This test is a bit tricky as we can't use backup table to overwrite an old
|
|
# table
|
|
#
|
|
connect (con1,localhost,root,,);
|
|
connect (con2,localhost,root,,);
|
|
connection con1;
|
|
set SQL_LOG_BIN=0;
|
|
--disable_warnings
|
|
drop table if exists t1, t2, t3;
|
|
--enable_warnings
|
|
create table t4(n int);
|
|
--replace_result ": 1" ": X" ": 2" ": X" ": 22" ": X" ": 23" ": X" $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
|
backup table t4 to '../bogus';
|
|
backup table t4 to '../tmp';
|
|
--replace_result ": 7" ": X" ": 17" ": X" $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
|
backup table t4 to '../tmp';
|
|
drop table t4;
|
|
restore table t4 from '../tmp';
|
|
select count(*) from t4;
|
|
|
|
create table t1(n int);
|
|
insert into t1 values (23),(45),(67);
|
|
backup table t1 to '../tmp';
|
|
drop table t1;
|
|
--replace_result ": 1" ": X" ": 2" ": X" ": 22" ": X" ": 23" ": X" $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
|
restore table t1 from '../bogus';
|
|
restore table t1 from '../tmp';
|
|
select n from t1;
|
|
create table t2(m int not null primary key);
|
|
create table t3(k int not null primary key);
|
|
insert into t2 values (123),(145),(167);
|
|
insert into t3 values (223),(245),(267);
|
|
backup table t2,t3 to '../tmp';
|
|
drop table t1,t2,t3;
|
|
restore table t1,t2,t3 from '../tmp';
|
|
select n from t1;
|
|
select m from t2;
|
|
select k from t3;
|
|
drop table t1,t2,t3,t4;
|
|
restore table t1 from '../tmp';
|
|
connection con2;
|
|
rename table t1 to t5;
|
|
--send
|
|
lock tables t5 write;
|
|
connection con1;
|
|
--send
|
|
backup table t5 to '../tmp';
|
|
connection con2;
|
|
reap;
|
|
unlock tables;
|
|
connection con1;
|
|
reap;
|
|
drop table t5;
|