mirror of
https://github.com/MariaDB/server.git
synced 2025-08-07 00:04:31 +03:00
Fixes bug #12517. Clear user variables and replication events before
closing temp tables in thread cleanup. mysql-test/r/connect.result: added results for test of bug #12517 mysql-test/t/connect.test: added test of bug #12517 sql/sql_class.cc: Clear user variables and replication events before closing temp tables in thread cleanup.
This commit is contained in:
@@ -65,3 +65,19 @@ show tables;
|
||||
Tables_in_test
|
||||
delete from mysql.user where user=_binary"test";
|
||||
flush privileges;
|
||||
use test;
|
||||
drop table if exists t1;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 't1'
|
||||
create table t1 (id integer not null auto_increment primary key);
|
||||
drop table if exists t2;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 't2'
|
||||
create temporary table t2(id integer not null auto_increment primary key);
|
||||
set @id := 1;
|
||||
delete from t1 where id like @id;
|
||||
use test;
|
||||
drop table if exists t2;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 't2'
|
||||
drop table if exists t1;
|
||||
|
@@ -77,4 +77,22 @@ show tables;
|
||||
delete from mysql.user where user=_binary"test";
|
||||
flush privileges;
|
||||
|
||||
# Test for bug #12517.
|
||||
connect (con2,localhost,root,,test);
|
||||
connection con2;
|
||||
use test;
|
||||
drop table if exists t1;
|
||||
create table t1 (id integer not null auto_increment primary key);
|
||||
drop table if exists t2;
|
||||
create temporary table t2(id integer not null auto_increment primary key);
|
||||
set @id := 1;
|
||||
delete from t1 where id like @id;
|
||||
disconnect con2;
|
||||
sleep 5;
|
||||
connect (con1,localhost,root,,test);
|
||||
connection con1;
|
||||
use test;
|
||||
drop table if exists t2;
|
||||
drop table if exists t1;
|
||||
|
||||
# End of 4.1 tests
|
||||
|
@@ -353,12 +353,12 @@ void THD::cleanup(void)
|
||||
mysql_ha_flush(this, (TABLE_LIST*) 0,
|
||||
MYSQL_HA_CLOSE_FINAL | MYSQL_HA_FLUSH_ALL);
|
||||
hash_free(&handler_tables_hash);
|
||||
delete_dynamic(&user_var_events);
|
||||
hash_free(&user_vars);
|
||||
close_temporary_tables(this);
|
||||
my_free((char*) variables.time_format, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free((char*) variables.date_format, MYF(MY_ALLOW_ZERO_PTR));
|
||||
my_free((char*) variables.datetime_format, MYF(MY_ALLOW_ZERO_PTR));
|
||||
delete_dynamic(&user_var_events);
|
||||
hash_free(&user_vars);
|
||||
if (global_read_lock)
|
||||
unlock_global_read_lock(this);
|
||||
if (ull)
|
||||
|
Reference in New Issue
Block a user