diff options
author | unknown <pem@mysql.comhem.se> | 2004-11-25 16:13:06 +0100 |
---|---|---|
committer | unknown <pem@mysql.comhem.se> | 2004-11-25 16:13:06 +0100 |
commit | ea75abc51300e62ddff4842ddc11d378861aa07b (patch) | |
tree | 68158d653cffb98543a506d97806bacfa5ddf4d3 /mysql-test/t/sp-error.test | |
parent | a0f2ecf7fbb0194ed26a8b6dadd4fffa672c46bc (diff) | |
download | mariadb-git-ea75abc51300e62ddff4842ddc11d378861aa07b.tar.gz |
Fixed BUG#6807: Stored procedure crash if CREATE PROCEDURE ... KILL QUERY
...and for PURGE BEFORE too. (Don't fix_fields in the parser!)
mysql-test/r/sp-error.result:
New test case for BUG#6807
mysql-test/t/sp-error.test:
New test case for BUG#6807
sql/sql_lex.h:
Purge and kill query args not needed in lex. (Using value_list instead)
sql/sql_parse.cc:
Evaluate purge before and kill query args in mysql_execute_command
instead of in the parser. (Makes it work with stored procedures)
sql/sql_yacc.yy:
Don't evaluate (fix_fields) args in the parser for purge before and kill query.
(Doesn't work with stored procedures)
Diffstat (limited to 'mysql-test/t/sp-error.test')
-rw-r--r-- | mysql-test/t/sp-error.test | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/mysql-test/t/sp-error.test b/mysql-test/t/sp-error.test index c04f8e6f9e9..c24f9df16be 100644 --- a/mysql-test/t/sp-error.test +++ b/mysql-test/t/sp-error.test @@ -632,6 +632,28 @@ end| call bug3294()| drop procedure bug3294| +# +# BUG#6807: Stored procedure crash if CREATE PROCEDURE ... KILL QUERY +# +--disable_warnings +drop procedure if exists bug6807| +--enable_warnings +create procedure bug6807() +begin + declare id int; + + set id = connection_id(); + kill query id; + select 'Not reached'; +end| + +--error 1317 +call bug6807()| +--error 1317 +call bug6807()| + +drop procedure bug6807| + drop table t1| |