- 26 Sep, 2007 2 commits
-
-
unknown authored
mysql-test/r/view.result: merge of the fix for bug 27802 to 5.1 sql/item_cmpfunc.h: merge of the fix for bug 27216 to 5.1 sql/sql_insert.cc: merge of the fix for bug 27216 to 5.1 sql/sql_lex.h: merge of the fix for bug 27802 to 5.1 sql/sql_select.cc: merge of the fix for bug 27802 to 5.1 sql/table.h: merge of the fix for bug 27802 to 5.1
-
unknown authored
mysql-test/r/view.result: Auto merged sql/sql_select.cc: Auto merged sql/sql_view.cc: Auto merged sql/table.h: Auto merged
-
- 24 Sep, 2007 4 commits
-
-
unknown authored
into sunlight.local:/local_work/merge-5.1-opt-mysql libmysql/libmysql.c: Auto merged mysql-test/r/date_formats.result: Auto merged mysql-test/r/insert_select.result: Auto merged mysql-test/t/insert_select.test: Auto merged sql/item_func.cc: Auto merged sql/item_func.h: Auto merged sql/item_timefunc.cc: Auto merged sql/mysql_priv.h: Auto merged sql/protocol.cc: Auto merged sql/sql_class.h: Auto merged mysql-test/r/type_datetime.result: Manually merged mysql-test/t/type_datetime.test: Manually merged sql/item_cmpfunc.cc: Manually merged sql/item_cmpfunc.h: Manually merged sql/sql_insert.cc: Manually merged
-
unknown authored
When storing the VIEW the CREATE VIEW command is reconstructed from the parse tree. While constructing the command string the index hints specified should also be printed. Fixed by adding code to print the index hints when printing a table in the FROM clause. mysql-test/r/view.result: Bug #28702: test case mysql-test/t/view.test: Bug #28702: test case sql/sql_select.cc: Bug #28702: preserve index hints in a VIEW definition. sql/table.h: Bug #28702: preserve index hints in a VIEW definition.
-
unknown authored
-
unknown authored
sql/sql_view.cc: Auto merged
-
- 22 Sep, 2007 4 commits
-
-
unknown authored
into macbook.local:/Users/kgeorge/mysql/autopush/B28701-merged-5.0-opt
-
unknown authored
into macbook.local:/Users/kgeorge/mysql/work/B28701-merged-5.0-opt sql/sql_view.cc: Auto merged mysql-test/r/view.result: merge with 5.0-opt mysql-test/t/view.test: merge with 5.0-opt
-
unknown authored
into sunlight.local:/local_work/27216-bug-5.0-opt-mysql sql/sql_insert.cc: Auto merged
-
unknown authored
type of the result. There are several functions that accept parameters of different types. The result field type of such functions was determined based on the aggregated result type of its arguments. As the DATE and the DATETIME types are represented by the STRING type, the result field type of the affected functions was always STRING for DATE/DATETIME arguments. The affected functions are COALESCE, IF, IFNULL, CASE, LEAST/GREATEST, CASE. Now the affected functions aggregate the field types of their arguments rather than their result types and return the result of aggregation as their result field type. The cached_field_type member variable is added to the number of classes to hold the aggregated result field type. The str_to_date() function's result field type now defaults to the MYSQL_TYPE_DATETIME. The agg_field_type() function is added. It aggregates field types with help of the Field::field_type_merge() function. The create_table_from_items() function now uses the item->tmp_table_field_from_field_type() function to get the proper field when the item is a function with a STRING result type. libmysql/libmysql.c: Bug#27216: functions with parameters of different date types may return wrong type of the result. The client library now accepts the NEWDATE type as a string. sql/item_cmpfunc.cc: Bug#27216: functions with parameters of different date types may return wrong type of the result. Now the fix_length_and_dec functions of the Item_func_ifnull,Item_func_if, Item_func_case, Item_func_coalesce classes are use agg_field_type function to find out the type of their result field. sql/item_cmpfunc.h: Bug#27216: functions with parameters of different date types may return wrong type of the result. The cached_field type is added to the Item_func_case, Item_func_if and Item_func_coalesce classes. The field_type function is added to the Item_func_ifnull, Item_func_if, Item_func_coalesce, Item_func_case classes. sql/item_func.cc: Bug#27216: functions with parameters of different date types may return wrong type of the result. The Item_func_min_max::fix_length_and_dec function now uses the agg_field_type function to find out the correct type of the result field. sql/item_func.h: Bug#27216: functions with parameters of different date types may return wrong type of the result. The cached_field_type variable is added to the Item_func_min_max class. sql/item_timefunc.cc: Bug#27216: functions with parameters of different date types may return wrong type of the result. The result of the str_to_date function now defaults to the DATETIME type. sql/mysql_priv.h: Bug#27216: functions with parameters of different date types may return wrong type of the result. The prototype of the agg_field_type function is added. sql/protocol.cc: Bug#27216: functions with parameters of different date types may return wrong type of the result. The Protocol_simple::store function is now used to store fields of NEWDATE type. sql/sql_insert.cc: Bug#27216: functions with parameters of different date types may return wrong type of the result. The create_table_from_items function now uses the tmp_table_field_from_field_type function to get field for items with the STRING result type. mysql-test/r/date_formats.result: A test case result corrected after fixing bug#27216. mysql-test/r/type_datetime.result: Added a test case for the bug#27216: functions with parameters of different date types may return wrong type of the result. mysql-test/t/type_datetime.test: Added a test case for the bug#27216: functions with parameters of different date types may return wrong type of the result.
-
- 21 Sep, 2007 3 commits
-
-
unknown authored
-
unknown authored
-
unknown authored
led to creating corrupted index. While execution of the CREATE .. SELECT SQL_BUFFER_RESULT statement the engine->start_bulk_insert function was called twice. On the first call On the first call MyISAM disabled all non-unique indexes and on the second call it decides to not re-enable them because all indexes was disabled. Due to this no indexes was actually created during CREATE TABLE thus producing crashed table. Now the select_inset class has is_bulk_insert_mode flag which prevents calling the start_bulk_insert function twice. The flag is set in the select_create::prepare, select_insert::prepare2 functions and the select_insert class constructor. The flag is reset in the select_insert::send_eof function. mysql-test/t/insert_select.test: A test case is added for the bug#30384: Having SQL_BUFFER_RESULT option in the CREATE .. KEY(..) .. SELECT led to creating corrupted index. mysql-test/r/insert_select.result: A test case is added for the bug#30384: Having SQL_BUFFER_RESULT option in the CREATE .. KEY(..) .. SELECT led to creating corrupted index. sql/sql_class.h: Bug#30384: Having SQL_BUFFER_RESULT option in the CREATE .. KEY(..) .. SELECT led to creating corrupted index. The is_bulk_insert_mode flag is added to the select_insert class. sql/sql_insert.cc: Bug#30384: Having SQL_BUFFER_RESULT option in the CREATE .. KEY(..) .. SELECT led to creating corrupted index. The is_bulk_insert_mode is set in the select_create::prepare, select_insert::prepare2 functions and the select_insert class constructor. The flag is reset in the select_insert::send_eof function.
-
- 20 Sep, 2007 6 commits
-
-
unknown authored
into mysql.com:/home/gluh/MySQL/Merge/5.1-opt
-
unknown authored
-
unknown authored
into mysql.com:/home/gluh/MySQL/Merge/5.1-opt mysql-test/r/grant.result: Auto merged
-
unknown authored
-
unknown authored
into mysql.com:/home/gluh/MySQL/Merge/5.1-opt mysql-test/r/alter_table.result: Auto merged mysql-test/r/create.result: Auto merged mysql-test/r/ctype_collate.result: Auto merged mysql-test/r/ctype_recoding.result: Auto merged mysql-test/r/default.result: Auto merged mysql-test/r/gis.result: Auto merged mysql-test/r/grant.result: Auto merged mysql-test/r/information_schema.result: Auto merged mysql-test/r/key.result: Auto merged mysql-test/r/mysql.result: Auto merged mysql-test/r/ps_1general.result: Auto merged mysql-test/r/sp.result: Auto merged mysql-test/r/type_enum.result: Auto merged mysql-test/r/type_ranges.result: Auto merged mysql-test/r/show_check.result: manual merge mysql-test/t/information_schema.test: manual merge sql/sql_show.cc: manual merge
-
unknown authored
added get_field_default_value() function which obtains default value from the field (used in store_create_info() & get_schema_column_record() functions) mysql-test/r/alter_table.result: result fix mysql-test/r/create.result: result fix mysql-test/r/ctype_collate.result: result fix mysql-test/r/ctype_recoding.result: result fix mysql-test/r/default.result: result fix mysql-test/r/gis.result: result fix mysql-test/r/grant.result: result fix mysql-test/r/information_schema.result: result fix mysql-test/r/key.result: result fix mysql-test/r/mysql.result: result fix mysql-test/r/ps_1general.result: result fix mysql-test/r/show_check.result: result fix mysql-test/r/sp.result: result fix mysql-test/r/type_enum.result: result fix mysql-test/r/type_ranges.result: result fix mysql-test/t/information_schema.test: test case
-
- 19 Sep, 2007 5 commits
-
-
unknown authored
into magare.gmz:/home/kgeorge/mysql/autopush/B30639-5.1-opt mysql-test/r/select.result: Auto merged mysql-test/t/select.test: Auto merged sql/sql_lex.cc: Auto merged
-
unknown authored
The parser uses ulonglong to store the LIMIT number. This number then is stored into a variable of type ha_rows. ha_rows is either 4 or 8 byte depending on the BIG_TABLES define from config.h So an overflow may occur (and LIMIT becomes zero) while storing an ulonglong value in ha_rows. Fixed by : 1. Using the maximum possible value for ha_rows on overflow 2. Defining BIG_TABLES for the windows builds (to match the others) include/config-win.h: Bug #30639: turn on BIG_TABLES for windows mysql-test/r/select.result: Bug #30639: test case mysql-test/t/select.test: Bug #30639: test case sql/sql_lex.cc: Bug #30639: Use the maximum possible number on overflow of LIMIT. This is valid because there won't be more rows anyway.
-
unknown authored
into mysql.com:/home/gluh/MySQL/Merge/5.1-opt
-
unknown authored
into mysql.com:/home/gluh/MySQL/Merge/5.1-opt mysql-test/suite/rpl/r/rpl_row_tabledefs_2myisam.result: Auto merged mysql-test/suite/rpl/r/rpl_row_tabledefs_3innodb.result: Auto merged
-
unknown authored
into mysql.com:/home/gluh/MySQL/Merge/5.0-opt
-
- 15 Sep, 2007 3 commits
-
-
unknown authored
Post-merge fix. mysql-test/suite/rpl/r/rpl_row_colSize.result: Post-merge fix. mysql-test/suite/rpl/r/rpl_row_tabledefs_2myisam.result: Post-merge fix. mysql-test/suite/rpl/r/rpl_extraCol_innodb.result: Post-merge fix. mysql-test/suite/rpl/r/rpl_extraCol_myisam.result: Post-merge fix. mysql-test/suite/rpl/r/rpl_row_tabledefs_3innodb.result: Post-merge fix.
-
unknown authored
into devsrv-b.mysql.com:/data0/gshchepa/mysql-5.1-opt mysql-test/t/select.test: Auto merged
-
unknown authored
Post-fix for bug#27695. mysql-test/t/select.test: Post-fix for bug#27695.
-
- 14 Sep, 2007 13 commits
-
-
unknown authored
into magare.gmz:/home/kgeorge/mysql/autopush/B31001-5.1-opt
-
unknown authored
into devsrv-b.mysql.com:/data0/gshchepa/mysql-5.1-opt sql/item.cc: Auto merged
-
unknown authored
into devsrv-b.mysql.com:/data0/gshchepa/mysql-5.0-opt
-
unknown authored
-
unknown authored
into magare.gmz:/home/kgeorge/mysql/autopush/B31001-5.0-opt
-
unknown authored
into magare.gmz:/home/kgeorge/mysql/work/B31001-5.1-opt mysql-test/include/mix1.inc: merge 5.0-opt -> 5.1-opt mysql-test/r/innodb_mysql.result: merge 5.0-opt -> 5.1-opt sql/sql_select.cc: merge 5.0-opt -> 5.1-opt
-
unknown authored
Merge with 5.0-opt. mysql-test/r/binlog_unsafe.result: Merge with 5.0-opt. mysql-test/r/events_bugs.result: Merge with 5.0-opt. mysql-test/r/events_trans.result: Merge with 5.0-opt. mysql-test/r/sp.result: Merge with 5.0-opt. mysql-test/r/sp_gis.result: Merge with 5.0-opt. mysql-test/r/xml.result: Merge with 5.0-opt. mysql-test/suite/rpl/r/rpl_incident.result: Merge with 5.0-opt. mysql-test/suite/rpl/r/rpl_loaddata_fatal.result: Merge with 5.0-opt. mysql-test/suite/rpl/r/rpl_udf.result: Merge with 5.0-opt. mysql-test/suite/rpl_ndb/r/rpl_ndb_extraCol.result: Merge with 5.0-opt. mysql-test/suite/ndb/r/ndb_dd_basic.result: Merge with 5.0-opt. mysql-test/suite/ndb/r/ndb_dd_ddl.result: Merge with 5.0-opt. mysql-test/suite/ndb/r/ndb_gis.result: Merge with 5.0-opt. mysql-test/suite/ndb/r/ndb_row_format.result: Merge with 5.0-opt. mysql-test/suite/ndb/r/ndb_single_user.result: Merge with 5.0-opt.
-
unknown authored
The optimizer sets index traversal in reverse order only if there are used key parts that are not compared to a constant. However using the primary key as an ORDER BY suffix rendered the check incomplete : going in reverse order must still be used even if all the parts of the secondary key are compared to a constant. Fixed by relaxing the check and set reverse traversal even when all the secondary index keyparts are compared to a const. Also account for the case when all the primary keys are compared to a constant. mysql-test/r/innodb_mysql.result: Bug #31001: test case mysql-test/t/innodb_mysql.test: Bug #31001: test case sql/sql_select.cc: Bug #31001: - account for the case when all the primary key parts are compared to a constant - force test_if_skip_sort_order to go backwards over the key even when the number of keyparts used is the same as the number of keyparts equal to a constant. (because of the primary key suffix).
-
unknown authored
into mysql.com:/home/psergey/mysql-5.1-bug27927 mysql-test/r/type_bit.result: Auto merged mysql-test/t/type_bit.test: Auto merged sql/item_sum.cc: Auto merged
-
unknown authored
into mysql.com:/home/psergey/mysql-5.0-bug30324
-
unknown authored
- The bug was caused by COUNT(DISTINCT ...) code using Unique object in a way that assumed that BIT(N) column occupies a contiguous space in temp_table->record[0] buffer. - The fix is to make COUNT(DISTINCT ...) code instruct create_tmp_table to create temporary table with column of type BIGINT, not BIT(N). mysql-test/r/type_bit.result: BUG#30324: Grouping queries with COUNT(DISTINCT bit column) return wrong results - Testcase mysql-test/t/type_bit.test: BUG#30324: Grouping queries with COUNT(DISTINCT bit column) return wrong results - Testcase sql/item_sum.cc: BUG#30324: Grouping queries with COUNT(DISTINCT bit column) return wrong results - Make COUNT(DISTINCT ...) code instruct create_tmp_table to create temporary table with BIGINT, not BIT(N) column.
-
unknown authored
into mysql.com:/home/psergey/mysql-5.1-bug27927 mysql-test/r/partition_pruning.result: Auto merged
-
unknown authored
- Introduced val_int_endpoint() function which converts between func argument intervals and func value intervals for monotonic functions. - Made partition interval analyzer use part_expr->val_int_endpoint() to check if the edge values should be included. mysql-test/r/partition_pruning.result: BUG#27927: Partition pruning not optimal with TO_DAYS and YEAR functions - Testcase mysql-test/t/partition_pruning.test: BUG#27927: Partition pruning not optimal with TO_DAYS and YEAR functions - Testcase sql/item.cc: BUG#27927: Partition pruning not optimal with TO_DAYS and YEAR functions - Added Item_field::val_int_endpoint() implementation sql/item.h: BUG#27927: Partition pruning not optimal with TO_DAYS and YEAR functions - Added Item::val_int_endpoint() which converts intervals from argument space to function value space for unary monotonic functions. sql/item_timefunc.cc: BUG#27927: Partition pruning not optimal with TO_DAYS and YEAR functions - Added val_int_endpoint() for TO_DAYS and YEAR functions. sql/item_timefunc.h: BUG#27927: Partition pruning not optimal with TO_DAYS and YEAR functions - Added val_int_endpoint() for TO_DAYS and YEAR functions. sql/partition_info.h: BUG#27927: Partition pruning not optimal with TO_DAYS and YEAR functions - Removed partition_info::range_analysis_include_bounds as it is no longer needed. sql/sql_partition.cc: BUG#27927: Partition pruning not optimal with TO_DAYS and YEAR functions - Make partition interval analyzer use part_expr->val_int_endpoint() to check if the edge values should be included.
-