Commit da94b166 authored by SergeyV@selena's avatar SergeyV@selena

Fixes bug #15943. resets error flag for show create view command, to allow

proper processing of multiple sql statements sent as a single command.
parent d19e124d
...@@ -2538,3 +2538,13 @@ Warnings: ...@@ -2538,3 +2538,13 @@ Warnings:
Warning 1052 Column 'x' in group statement is ambiguous Warning 1052 Column 'x' in group statement is ambiguous
DROP VIEW v1; DROP VIEW v1;
DROP TABLE t1; DROP TABLE t1;
drop table if exists t1;
drop view if exists v1;
create table t1 (id int);
create view v1 as select * from t1;
drop table t1;
show create view v1;
drop view v1;
//
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sql_no_cache `test`.`t1`.`id` AS `id` from `t1`
...@@ -2380,3 +2380,18 @@ SELECT IF(x IS NULL, 'blank', 'not blank') AS x FROM v1 GROUP BY x; ...@@ -2380,3 +2380,18 @@ SELECT IF(x IS NULL, 'blank', 'not blank') AS x FROM v1 GROUP BY x;
DROP VIEW v1; DROP VIEW v1;
DROP TABLE t1; DROP TABLE t1;
#
# BUG#15943: mysql_next_result hangs on invalid SHOW CREATE VIEW
#
delimiter //;
drop table if exists t1;
drop view if exists v1;
create table t1 (id int);
create view v1 as select * from t1;
drop table t1;
show create view v1;
drop view v1;
//
delimiter ;//
...@@ -365,6 +365,13 @@ mysqld_show_create(THD *thd, TABLE_LIST *table_list) ...@@ -365,6 +365,13 @@ mysqld_show_create(THD *thd, TABLE_LIST *table_list)
{ {
if (!table_list->view || thd->net.last_errno != ER_VIEW_INVALID) if (!table_list->view || thd->net.last_errno != ER_VIEW_INVALID)
DBUG_RETURN(TRUE); DBUG_RETURN(TRUE);
/*
Need this for proper processing of multiple sql statements
sent as single command
*/
thd->net.report_error= 0;
/* /*
Clear all messages with 'error' level status and Clear all messages with 'error' level status and
issue a warning with 'warning' level status in issue a warning with 'warning' level status in
......
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