Commit 7ce249b9 authored by unknown's avatar unknown

Fixed BUG#3843: ANALYZE TABLE inside stored procedure causes 'Packets out of order' error.


mysql-test/r/sp.result:
  New test case for BUG#3843.
mysql-test/t/sp.test:
  New test case for BUG#3843.
sql/sql_yacc.yy:
  Added another multi results special case for stored procedures (analyze).
parent 21635469
......@@ -1360,6 +1360,18 @@ bug3132('Bob')
Hello, Bob!
Hello, Judy!
drop function bug3132|
create procedure bug3843()
analyze table t1|
call bug3843()|
Table Op Msg_type Msg_text
test.t1 analyze status OK
call bug3843()|
Table Op Msg_type Msg_text
test.t1 analyze status Table is already up to date
select 1+2|
1+2
3
drop procedure bug3843|
drop table if exists fac|
create table fac (n int unsigned not null primary key, f bigint unsigned)|
create procedure ifac(n int unsigned)
......
......@@ -1560,6 +1560,19 @@ create function bug3132(s char(20)) returns char(50)
select bug3132('Bob') union all select bug3132('Judy')|
drop function bug3132|
#
# BUG#3843
#
create procedure bug3843()
analyze table t1|
# Testing for packets out of order
call bug3843()|
call bug3843()|
select 1+2|
drop procedure bug3843|
#
# Some "real" examples
......
......@@ -1601,7 +1601,8 @@ sp_proc_stmt:
lex->sql_command == SQLCOM_SHOW_CREATE_PROC ||
lex->sql_command == SQLCOM_SHOW_CREATE_FUNC ||
lex->sql_command == SQLCOM_SHOW_STATUS_PROC ||
lex->sql_command == SQLCOM_SHOW_STATUS_FUNC)
lex->sql_command == SQLCOM_SHOW_STATUS_FUNC ||
lex->sql_command == SQLCOM_ANALYZE)
{
/* We maybe have one or more SELECT without INTO */
lex->sphead->m_multi_results= TRUE;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment