mirror of
https://github.com/MariaDB/server.git
synced 2026-04-17 22:05:35 +02:00
Bug#17284 erroneous temp table cleanup on slave.
Idea of the fix is for master to send FD event with `created' as 0
to reconnecting slave (upon slave_net_timeout, no master crash) to avoid destroying temp tables.
In a case of a connect by slave to the master after its crash temp tables have been already
cleaned up so that slave can not keep `orphan' temp tables.
mysql-test/r/rpl_temporary.result:
results
mysql-test/t/rpl_temporary.test:
wait-free addon to check temp tables are ok after slave reconnect.
sql/sql_repl.cc:
Storing zero for assigning to `created' of FD event on the reconnecting slave.
mysql-test/include/get_binlog_dump_thread_id.inc:
mysqltest's preudo-macro to calculate $id master dump thread id
This commit is contained in:
parent
0a2cd4bb9f
commit
3ab267bf81
4 changed files with 55 additions and 1 deletions
9
mysql-test/include/get_binlog_dump_thread_id.inc
Normal file
9
mysql-test/include/get_binlog_dump_thread_id.inc
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
--exec $MYSQL test -e 'show processlist' | grep 'Binlog Dump' | cut -f1 > $MYSQLTEST_VARDIR/tmp/bl_dump_thread_id
|
||||
--disable_warnings
|
||||
drop table if exists t999;
|
||||
--enable_warnings
|
||||
create temporary table t999 (f int);
|
||||
--replace_result $MYSQL_TEST_DIR "."
|
||||
eval LOAD DATA INFILE "$MYSQLTEST_VARDIR/tmp/bl_dump_thread_id" into table t999;
|
||||
let $id = `select f from t999`;
|
||||
drop table t999;
|
||||
Loading…
Add table
Add a link
Reference in a new issue