From: Dmitry Shulga Date: June 8 2011 2:02pm Subject: bzr push into mysql-5.5 branch (Dmitry.Shulga:3431 to 3432) Bug#11763757 List-Archive: http://lists.mysql.com/commits/138855 X-Bug: 11763757 Message-Id: <201106081402.p58E2HLr020432@acsmt358.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============8283446837945280749==" --===============8283446837945280749== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline 3432 Dmitry Shulga 2011-06-08 Added regression test for bug#11763757 "56510: ERROR 42000: FUNCTION DOES NOT EXIST IF NOT-PRIV USER RECONNECTS". The bug itself was fixed by the same patch as bug@11747137 "30977: CONCURRENT STATEMENT USING STORED FUNCTION AND DROP FUNCTION BREAKS SBR". modified: mysql-test/r/sp_notembedded.result mysql-test/t/sp_notembedded.test 3431 Ramil Kalimullin 2011-06-07 [merge] Auto-merge from mysql-5.1 modified: mysql-test/r/gis-rtree.result mysql-test/t/gis-rtree.test storage/myisam/mi_update.c storage/myisam/mi_write.c === modified file 'mysql-test/r/sp_notembedded.result' --- a/mysql-test/r/sp_notembedded.result 2011-03-18 14:16:17 +0000 +++ b/mysql-test/r/sp_notembedded.result 2011-06-08 13:44:50 +0000 @@ -254,7 +254,6 @@ CREATE PROCEDURE p1(i INT) BEGIN END; DROP PROCEDURE p1; DELETE FROM mysql.user WHERE User='mysqltest_1'; FLUSH PRIVILEGES; -set @@global.concurrent_insert= @old_concurrent_insert; # # Bug#44521 Prepared Statement: CALL p() - crashes: `! thd->main_da.is_sent' failed et.al. # @@ -288,3 +287,25 @@ DROP FUNCTION f1; # ------------------------------------------------------------------ # -- End of 5.1 tests # ------------------------------------------------------------------ +# +# Test for bug#11763757 "56510: ERROR 42000: FUNCTION DOES NOT EXIST +# IF NOT-PRIV USER RECONNECTS ". +# +# The real problem was that server was unable handle properly stored +# functions in databases which names contained dot. +# +DROP DATABASE IF EXISTS `my.db`; +create database `my.db`; +use `my.db`; +CREATE FUNCTION f1(a int) RETURNS INT RETURN a; +# Create new connection. +USE `my.db`; +SELECT f1(1); +f1(1) +1 +SELECT `my.db`.f1(2); +`my.db`.f1(2) +2 +# Switching to default connection. +DROP DATABASE `my.db`; +set @@global.concurrent_insert= @old_concurrent_insert; === modified file 'mysql-test/t/sp_notembedded.test' --- a/mysql-test/t/sp_notembedded.test 2010-08-06 11:29:37 +0000 +++ b/mysql-test/t/sp_notembedded.test 2011-06-08 13:44:50 +0000 @@ -371,16 +371,6 @@ DELETE FROM mysql.user WHERE User='mysql FLUSH PRIVILEGES; -# -# Restore global concurrent_insert value. Keep in the end of the test file. -# - -set @@global.concurrent_insert= @old_concurrent_insert; - -# Wait till all disconnects are completed ---source include/wait_until_count_sessions.inc - - --echo # --echo # Bug#44521 Prepared Statement: CALL p() - crashes: `! thd->main_da.is_sent' failed et.al. --echo # @@ -449,7 +439,47 @@ DROP FUNCTION f1; --disconnect con1 --disconnect con2 - --echo # ------------------------------------------------------------------ --echo # -- End of 5.1 tests --echo # ------------------------------------------------------------------ + +--echo # +--echo # Test for bug#11763757 "56510: ERROR 42000: FUNCTION DOES NOT EXIST +--echo # IF NOT-PRIV USER RECONNECTS ". +--echo # +--echo # The real problem was that server was unable handle properly stored +--echo # functions in databases which names contained dot. +--echo # + +connection default; + +--disable_warnings +DROP DATABASE IF EXISTS `my.db`; +--enable_warnings + +create database `my.db`; +use `my.db`; + +CREATE FUNCTION f1(a int) RETURNS INT RETURN a; + +--echo # Create new connection. +connect (addcon, localhost, root,,); +connection addcon; +USE `my.db`; +SELECT f1(1); +SELECT `my.db`.f1(2); + +--echo # Switching to default connection. +connection default; +disconnect addcon; +DROP DATABASE `my.db`; + +# +# Restore global concurrent_insert value. Keep in the end of the test file. +# + +set @@global.concurrent_insert= @old_concurrent_insert; + +# Wait till all disconnects are completed +--source include/wait_until_count_sessions.inc + --===============8283446837945280749== 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\ # 1d0opabpgzp36za6 # target_branch: file:///Users/shulga/projects/mysql/mysql-5.5-\ # bug11763757/ # testament_sha1: 81278ec76ca5e0de046d68e26415aa2e68b5a4a6 # timestamp: 2011-06-08 21:02:12 +0700 # base_revision_id: ramil@stripped # # Begin bundle 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 --===============8283446837945280749==--