mirror of
https://github.com/MariaDB/server.git
synced 2025-08-07 00:04:31 +03:00
fix for table/field caching mechanism
save moving ON/USING tables conditions to WHERE clause (BUG#2794) sql/sql_base.cc: fix for table/field caching mechanism (global lock of it and right table passed as parameter) save moving ON/USING tables conditions to WHERE clause (BUG#2794) sql/sql_class.cc: lock for using field/table cache in Item name resolution sql/sql_class.h: lock for using field/table cache in Item name resolution sql/sql_insert.cc: lock for using field/table cache in Item name resolution tests/client_test.c: Test of PS queries with ON condition
This commit is contained in:
@@ -84,9 +84,14 @@ check_insert_fields(THD *thd,TABLE *table,List<Item> &fields,
|
||||
table_list.grant=table->grant;
|
||||
|
||||
thd->dupp_field=0;
|
||||
thd->no_table_fix_fields_cache= 1;
|
||||
if (setup_tables(&table_list) ||
|
||||
setup_fields(thd, 0, &table_list,fields,1,0,0))
|
||||
{
|
||||
thd->no_table_fix_fields_cache= 0;
|
||||
return -1;
|
||||
}
|
||||
thd->no_table_fix_fields_cache= 0;
|
||||
if (thd->dupp_field)
|
||||
{
|
||||
my_error(ER_FIELD_SPECIFIED_TWICE,MYF(0), thd->dupp_field->field_name);
|
||||
|
Reference in New Issue
Block a user