Bug #10519 Mysql Test: EXECUTE command is denied to ‘test’@’localhost’ on windows
Submitted: 10 May 2005 16:26 Modified: 22 Jul 2005 7:54
Reporter: Disha Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server Severity:S2 (Serious)
Version:5.0.5-beta-nt OS:Windows (Windows 2003 Standard Edition)
Assigned to: CPU Architecture:Any

[10 May 2005 16:26] Disha
Description:
We have created a user 'test' and granted 'execute' privilege ,and created a procedure 'sp11'.Reconnected to 'test' database with user 'test', and executed the procedure 'sp11'.

How to repeat:
Repro Steps

1. Set delimiter ie execute the following SQL statement:
       delimiter //

2. Select database 'test' ie execute the following SQL statement:
        use test//

3. Create a user 'test' ie execute the following SQL statement:
        CREATE USER test//

4. Grant 'EXECUTE' privilege to user 'test' on database 'test' and flush privileges ie execute the following SQL statement:
         GRANT EXECUTE ON test.* TO 'test'@'localhost'//
         FLUSH PRIVILEGES//

5. Create a table 't1' in mysql database ie execute the following SQL statement:
         CREATE TABLE mysql.t1( f1 CHAR )//

6. Create procedure 'sp11' ie execute the following SQL statement:
         CREATE PROCEDURE sp11()	INSERT INTO mysql.t1 VALUES('a')//

7. Execute 'select' statement:
         Select security_type from mysql.proc where specific_name='sp11'//

8. Connect to 'test' database with user 'test' ie execute the following SQL  
statement:
           Connect (test,localhost,test,,test,$MASTER_MYPORT,master.sock)//
           connection test//

9. Execute the procedure 'sp11' ie execute the following SQL statement:
            call sp11()//

Observed : Step 9 gives an error message 'EXECUTE command is denied to ‘test’@’localhost’ for routine test.sp11'.

Expected Results: Step 9 should execute successfully without any error message.

Actual Result : It gives an error message 'EXECUTE command is denied to ‘test’@’localhost’ for routine test.sp11'.
[11 May 2005 7:20] Disha
THIS ISSUE IS A MYSQL TEST ISSUE AND NOT A PRODUCT BUG.

Execute test file comprising following script:
CREATE USER test//
GRANT EXECUTE ON test.* TO 'test'@'localhost'//
FLUSH PRIVILEGES//
CREATE TABLE mysql.t1( f1 CHAR )//
drop procedure if exists sp11//
CREATE PROCEDURE sp11()	INSERT INTO mysql.t1 VALUES('a')//
Select security_type from mysql.proc where specific_name='sp11'// 
--replace_column 13 Created 14 Modified
Connect (test,localhost,test,,test,$MASTER_MYPORT,master.sock)//
connection test//
call sp11()// 

ACTUAL RESULT:
The call to SP1 fails with an error that EXECUTE command is denied to ‘test’@’localhost’ although we have granted him the same permission. The same code executes properly through MySQL-Test on Linux
[6 Jun 2005 23:40] MySQL Verification Team
What test script are you used ?. Because using the mysql-test-run.pl
I wasn't able to repeat the behavior reported for your test script:

miguel@light ~/mysql/mysql-test
$ ./mysql-test-run.pl bug10519
<cut>
Killing Possible Leftover Processes
Removing Stale Files
Installing Master Databases
Installing Master Databases
Installing Slave Databases
Installing Slave Databases
Installing Slave Databases
=======================================================
Finding  Tests in the 'main' suite
Starting Tests in the 'main' suite

TEST                            RESULT
-------------------------------------------------------

bug10519                        [ pass ]
-------------------------------------------------------
Ending Tests
Shutting-down MySQL daemon

Master(s) shutdown finished
Slave(s) shutdown finished
All 1 tests were successful.
[7 Jul 2005 23:00] Bugs System
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
[22 Jul 2005 7:54] Disha
We have tried this bug on Build 5.0.9, however it does not repro, so closing the
bug.