diff options
Diffstat (limited to 'sql')
-rw-r--r-- | sql/sql_cursor.cc | 13 | ||||
-rw-r--r-- | sql/sql_yacc.yy | 2 |
2 files changed, 8 insertions, 7 deletions
diff --git a/sql/sql_cursor.cc b/sql/sql_cursor.cc index 07be9efa6ac..fc169fe18e8 100644 --- a/sql/sql_cursor.cc +++ b/sql/sql_cursor.cc @@ -561,12 +561,13 @@ int Materialized_cursor::open(JOIN *join __attribute__((unused))) if (rc == 0) { /* - Now send the result set metadata to the client. We need to do it - here, as in Select_materialize::send_fields the exact column types - are not yet known. The new types may differ from the original ones - sent at prepare if some of them were altered by MySQL HEAP tables - mechanism -- used when create_tmp_field_from_item may alter the - original column type. + Now send the result set metadata to the client. We need to + do it here, as in Select_materialize::send_fields the items + for column types are not yet created (send_fields requires + a list of items). The new types may differ from the original + ones sent at prepare if some of them were altered by MySQL + HEAP tables mechanism -- used when create_tmp_field_from_item + may alter the original column type. We can't simply supply SEND_EOF flag to send_fields, because send_fields doesn't flush the network buffer. diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy index 109dcd7e86a..abc440df1c5 100644 --- a/sql/sql_yacc.yy +++ b/sql/sql_yacc.yy @@ -9008,7 +9008,7 @@ view_user: thd->lex->create_view_definer)) YYABORT; } - | CURRENT_USER optional_braces + | DEFINER_SYM EQ CURRENT_USER optional_braces { THD *thd= YYTHD; if (!(thd->lex->create_view_definer= |