From: Dmitry Shulga Date: November 11 2010 5:11am Subject: bzr commit into mysql-trunk-bugfixing branch (Dmitry.Shulga:3332) List-Archive: http://lists.mysql.com/commits/123519 Message-Id: <201011110511.oAB5BiwJ023874@acsinet15.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============2126596138==" --===============2126596138== 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-trunk-bugfixing/ based on revid:mats.kindahl@stripped 3332 Dmitry Shulga 2010-11-11 [merge] Auto-merge from mysql-5.5-bugteam. 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:48:44 +0000 +++ b/sql/sp_head.cc 2010-11-11 05:10:48 +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 --===============2126596138== 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\ # bz6uzx31hkki6q3q # target_branch: file:///Users/shulga/projects/mysql/mysql-trunk-\ # bugfixing/ # testament_sha1: 4c92ffd783e4fdf391b58a63423eb7281519b6ee # timestamp: 2010-11-11 11:11:32 +0600 # source_branch: file:///Users/shulga/projects/mysql/mysql-5.5-\ # bugteam/ # base_revision_id: mats.kindahl@stripped\ # 7b6velsoc723hdpj # # Begin bundle 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 --===============2126596138==--