diff --git a/mysql-test/r/view.result b/mysql-test/r/view.result index de28f0975f9..ece710a7a1b 100644 --- a/mysql-test/r/view.result +++ b/mysql-test/r/view.result @@ -1770,3 +1770,11 @@ two 1025,2025,3025 two 1050,1050 drop view v1; drop table t1; +create table t1 (s1 int, s2 char); +create view v1 as select s1, s2 from t1; +select s2 from v1 vq1 where 2 = (select count(*) from v1 vq2 having vq1.s2 = vq2.s2); +ERROR 42S22: Unknown column 'vq2.s2' in 'having clause' +select s2 from v1 vq1 where 2 = (select count(*) aa from v1 vq2 having vq1.s2 = aa); +s2 +drop view v1; +drop table t1; diff --git a/sql/sql_parse.cc b/sql/sql_parse.cc index 5ef441d2741..fbcecdb0411 100644 --- a/sql/sql_parse.cc +++ b/sql/sql_parse.cc @@ -4347,6 +4347,7 @@ unsent_create_error: if (!(res= mysql_create_view(thd, thd->lex->create_view_mode)) && mysql_bin_log.is_open()) { + thd->clear_error(); Query_log_event qinfo(thd, thd->query, thd->query_length, 0, FALSE); mysql_bin_log.write(&qinfo); } @@ -4360,6 +4361,7 @@ unsent_create_error: if (!(res= mysql_drop_view(thd, first_table, thd->lex->drop_mode)) && mysql_bin_log.is_open()) { + thd->clear_error(); Query_log_event qinfo(thd, thd->query, thd->query_length, 0, FALSE); mysql_bin_log.write(&qinfo); }