mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
fixed bug in determinating uncacheable queries
new fatal_error interface to assign is_fatal_error and ne.report_error commant about Item_row mysql-test/r/subselect.result: test of inheritence of uncacheability mysql-test/t/subselect.test: test of inheritence of uncacheability sql/item.cc: new fatal_error interface to assign is_fatal_error and ne.report_error sql/item_func.cc: new fatal_error interface to assign is_fatal_error and ne.report_error sql/item_row.cc: comment about row sql/item_subselect.cc: new fatal_error interface to assign is_fatal_error and ne.report_error (message should be sent by allocate routine sql/log_event.cc: new fatal_error interface to assign is_fatal_error and ne.report_error sql/mysqld.cc: new fatal_error interface to assign is_fatal_error and ne.report_error sql/protocol.cc: new fatal_error interface to assign is_fatal_error and ne.report_error sql/sql_base.cc: new fatal_error interface to assign is_fatal_error and ne.report_error sql/sql_class.cc: new fatal_error interface to assign is_fatal_error and ne.report_error sql/sql_class.h: new fatal_error interface to assign is_fatal_error and ne.report_error sql/sql_delete.cc: new fatal_error interface to assign is_fatal_error and ne.report_error sql/sql_insert.cc: new fatal_error interface to assign is_fatal_error and ne.report_error sql/sql_lex.h: fixed bug in determinating uncacheable queries sql/sql_parse.cc: new fatal_error interface to assign is_fatal_error and ne.report_error sql/sql_prepare.cc: new fatal_error interface to assign is_fatal_error and ne.report_error sql/sql_select.cc: new fatal_error interface to assign is_fatal_error and ne.report_error sql/sql_show.cc: new fatal_error interface to assign is_fatal_error and ne.report_error sql/sql_union.cc: new fatal_error interface to assign is_fatal_error and ne.report_error sql/sql_update.cc: new fatal_error interface to assign is_fatal_error and ne.report_error sql/thr_malloc.cc: new fatal_error interface to assign is_fatal_error and ne.report_error
This commit is contained in:
@ -480,8 +480,18 @@ typedef struct st_lex
|
||||
inline void uncacheable()
|
||||
{
|
||||
safe_to_cache_query= 0;
|
||||
current_select->uncacheable =
|
||||
current_select->master_unit()->uncacheable= 1;
|
||||
|
||||
/*
|
||||
There are no sense to mark select_lex and union fields of LEX,
|
||||
but we should merk all subselects as uncacheable from current till
|
||||
most upper
|
||||
*/
|
||||
for (SELECT_LEX_NODE *sl= current_select;
|
||||
sl != &select_lex;
|
||||
sl= sl->outer_select())
|
||||
{
|
||||
sl->uncacheable = sl->master_unit()->uncacheable= 1;
|
||||
}
|
||||
}
|
||||
} LEX;
|
||||
|
||||
|
Reference in New Issue
Block a user