From 54d93c41530655ef0d50c2654c80fd12d13ea8d9 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 17 Feb 2004 01:14:51 +0200 Subject: 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 --- sql/sql_select.cc | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'sql/sql_select.cc') 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 &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 &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++; -- cgit v1.2.1