diff options
author | unknown <bell@sanja.is.com.ua> | 2004-02-17 01:14:51 +0200 |
---|---|---|
committer | unknown <bell@sanja.is.com.ua> | 2004-02-17 01:14:51 +0200 |
commit | 54d93c41530655ef0d50c2654c80fd12d13ea8d9 (patch) | |
tree | a619c58eaa61934c229e4af77c6ea8c60678beb5 /sql/sql_select.cc | |
parent | e8b6456f25656d339bb4f2bb64272679fa4f42d1 (diff) | |
download | mariadb-git-54d93c41530655ef0d50c2654c80fd12d13ea8d9.tar.gz |
ulternative bugfix for BUG#2508 and fix for BUG#2809 - every table has its own TABLE structure
mysql-test/r/union.result:
fix for union test becuase now not all fields in UNION allow NULLS
fix of test
test suite for BUG#2809
mysql-test/t/union.test:
test suite for BUG#2809
sql/mysql_priv.h:
removed unused parameter of setup_tables()
sql/sql_base.cc:
removed unused parameter of setup_tables()
cleanup of unused code
sql/sql_class.h:
removed unused field
sql/sql_help.cc:
removed unused parameter of setup_tables()
sql/sql_insert.cc:
removed unused parameter of setup_tables()
sql/sql_lex.cc:
excluded duplicate tables finding for UNION
sql/sql_load.cc:
removed unused parameter of setup_tables()
sql/sql_olap.cc:
removed unused parameter of setup_tables()
sql/sql_prepare.cc:
removed unused parameter of setup_tables()
sql/sql_select.cc:
removed unused parameter of setup_tables()
revert old BUG#2508 patch
sql/sql_union.cc:
revert old BUG#2508 patch
removed unused code
sql/sql_update.cc:
removed unused parameter of setup_tables()
sql/table.h:
shared used only for multi-update for now
Diffstat (limited to 'sql/sql_select.cc')
-rw-r--r-- | sql/sql_select.cc | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/sql/sql_select.cc b/sql/sql_select.cc index 0e1a25bc42b..6a35eda9ab4 100644 --- a/sql/sql_select.cc +++ b/sql/sql_select.cc @@ -298,7 +298,7 @@ JOIN::prepare(Item ***rref_pointer_array, /* Check that all tables, fields, conds and order are ok */ - if (setup_tables(tables_list, 0) || + if (setup_tables(tables_list) || setup_wild(thd, tables_list, fields_list, &all_fields, wild_num) || select_lex->setup_ref_array(thd, og_num) || setup_fields(thd, (*rref_pointer_array), tables_list, fields_list, 1, @@ -1014,7 +1014,7 @@ JOIN::reinit() if (unit->select_limit_cnt == HA_POS_ERROR) select_lex->options&= ~OPTION_FOUND_ROWS; - if (setup_tables(tables_list, 1)) + if (setup_tables(tables_list)) DBUG_RETURN(1); /* Reset of sum functions */ @@ -4964,8 +4964,6 @@ create_tmp_table(THD *thd,TMP_TABLE_PARAM *param,List<Item> &fields, tmp_from_field, group != 0,not_all_columns); if (!new_field) goto err; // Should be OOM - if (param->all_nulls) - new_field->flags&= ~NOT_NULL_FLAG; // Because of outer join tmp_from_field++; *(reg_field++)= new_field; reclength+=new_field->pack_length(); @@ -5001,8 +4999,6 @@ create_tmp_table(THD *thd,TMP_TABLE_PARAM *param,List<Item> &fields, goto err; // Got OOM continue; // Some kindf of const item } - if (param->all_nulls) - new_field->flags&= ~NOT_NULL_FLAG; // Because of outer join if (type == Item::SUM_FUNC_ITEM) ((Item_sum *) item)->result_field= new_field; tmp_from_field++; |