From: Dmitry Shulga Date: November 11 2010 5:07am Subject: bzr commit into mysql-5.5-bugteam branch (Dmitry.Shulga:3118) Bug#54375 List-Archive: http://lists.mysql.com/commits/123518 X-Bug: 54375 Message-Id: <201011110509.oAALroih018145@rcsinet13.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1174036924==" --===============1174036924== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline #At file:///Users/shulga/projects/mysql/mysql-5.5-bugteam/ based on revid:vvaintroub@stripped 3118 Dmitry Shulga 2010-11-11 [merge] Auto-merge from mysql-5.1-bugteam for bug#54375. modified: mysql-test/r/sp-bugs.result mysql-test/t/sp-bugs.test sql/sp_head.cc === modified file 'mysql-test/r/sp-bugs.result' --- a/mysql-test/r/sp-bugs.result 2010-07-30 15:28:36 +0000 +++ b/mysql-test/r/sp-bugs.result 2010-11-11 05:06:16 +0000 @@ -75,4 +75,40 @@ CALL p1 (); ERROR HY000: Trigger does not exist DROP TABLE t1; DROP PROCEDURE p1; +# +# Bug#54375: Error in stored procedure leaves connection +# in different default schema +# +SET @@SQL_MODE = 'STRICT_ALL_TABLES'; +DROP DATABASE IF EXISTS db1; +CREATE DATABASE db1; +USE db1; +DROP TABLE IF EXISTS t1; +CREATE TABLE t1 (c1 int NOT NULL PRIMARY KEY); +INSERT INTO t1 VALUES (1); +CREATE FUNCTION f1 ( +some_value int +) +RETURNS smallint +DETERMINISTIC +BEGIN +INSERT INTO t1 SET c1 = some_value; +RETURN(LAST_INSERT_ID()); +END$$ +DROP DATABASE IF EXISTS db2; +CREATE DATABASE db2; +USE db2; +SELECT DATABASE(); +DATABASE() +db2 +SELECT db1.f1(1); +ERROR 23000: Duplicate entry '1' for key 'PRIMARY' +SELECT DATABASE(); +DATABASE() +db2 +USE test; +DROP FUNCTION db1.f1; +DROP TABLE db1.t1; +DROP DATABASE db1; +DROP DATABASE db2; End of 5.1 tests === modified file 'mysql-test/t/sp-bugs.test' --- a/mysql-test/t/sp-bugs.test 2010-02-13 10:35:14 +0000 +++ b/mysql-test/t/sp-bugs.test 2010-11-11 04:52:51 +0000 @@ -101,4 +101,41 @@ CALL p1 (); DROP TABLE t1; DROP PROCEDURE p1; +--echo # +--echo # Bug#54375: Error in stored procedure leaves connection +--echo # in different default schema +--echo # + +--disable_warnings +SET @@SQL_MODE = 'STRICT_ALL_TABLES'; +DROP DATABASE IF EXISTS db1; +CREATE DATABASE db1; +USE db1; +DROP TABLE IF EXISTS t1; +CREATE TABLE t1 (c1 int NOT NULL PRIMARY KEY); +INSERT INTO t1 VALUES (1); +DELIMITER $$; +CREATE FUNCTION f1 ( + some_value int +) +RETURNS smallint +DETERMINISTIC +BEGIN + INSERT INTO t1 SET c1 = some_value; + RETURN(LAST_INSERT_ID()); +END$$ +DELIMITER ;$$ +DROP DATABASE IF EXISTS db2; +CREATE DATABASE db2; +--enable_warnings +USE db2; +SELECT DATABASE(); +--error ER_DUP_ENTRY +SELECT db1.f1(1); +SELECT DATABASE(); +USE test; +DROP FUNCTION db1.f1; +DROP TABLE db1.t1; +DROP DATABASE db1; +DROP DATABASE db2; --echo End of 5.1 tests === modified file 'sql/sp_head.cc' --- a/sql/sp_head.cc 2010-10-27 07:32:26 +0000 +++ b/sql/sp_head.cc 2010-11-11 05:06:16 +0000 @@ -1510,7 +1510,7 @@ sp_head::execute(THD *thd, bool merge_da If the DB has changed, the pointer has changed too, but the original thd->db will then have been freed */ - if (cur_db_changed && !thd->killed) + if (cur_db_changed && thd->killed != THD::KILL_CONNECTION) { /* Force switching back to the saved current database, because it may be --===============1174036924== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/dmitry.shulga@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: dmitry.shulga@stripped\ # 5up1rstgg4o1fbqf # target_branch: file:///Users/shulga/projects/mysql/mysql-5.5-\ # bugteam/ # testament_sha1: 50632bb27a1bcbc955f5e0663e7b507aef88014d # timestamp: 2010-11-11 11:07:36 +0600 # source_branch: file:///Users/shulga/projects/mysql/5.1-bugteam-\ # bug36742/ # base_revision_id: vvaintroub@stripped\ # 11eqg6ubqndtdwh3 # # Begin bundle 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 --===============1174036924==--