1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

Bug #47788: Crash in TABLE_LIST::hide_view_error on

UPDATE + VIEW + SP + MERGE + ALTER

When cleaning up the stored procedure's internal 
structures the flag to ignore the errors for 
INSERT/UPDATE IGNORE was not cleaned up.
As a result error ignoring was on during name 
resolution. And this is an abnormal situation : the
SELECT_LEX flag can be on only during query execution.

Fixed by correctly cleaning up the SELECT_LEX flag 
when reusing the SELECT_LEX in a second execution.
This commit is contained in:
Georgi Kodinov
2009-10-19 16:55:04 +03:00
parent a17fb97b9b
commit db944fda03
3 changed files with 43 additions and 0 deletions

View File

@ -2342,6 +2342,9 @@ void reinit_stmt_before_use(THD *thd, LEX *lex)
/* Fix ORDER list */
for (order= (ORDER *)sl->order_list.first; order; order= order->next)
order->item= &order->item_ptr;
/* clear the no_error flag for INSERT/UPDATE IGNORE */
sl->no_error= FALSE;
}
{
SELECT_LEX_UNIT *unit= sl->master_unit();