- 09 May, 2007 4 commits
-
-
unknown authored
into bk-internal.mysql.com:/data0/bk/mysql-5.1-opt sql/handler.cc: Auto merged sql/item_func.cc: Auto merged sql/sql_class.h: Auto merged
-
unknown authored
into bk-internal.mysql.com:/data0/bk/mysql-5.1-opt mysql-test/r/loaddata.result: Auto merged mysql-test/t/loaddata.test: Auto merged
-
unknown authored
A test case is corrected. mysql-test/t/loaddata.test: A test case is corrected. mysql-test/r/loaddata.result: A test case is corrected.
-
unknown authored
into olga.mysql.com:/home/igor/mysql-5.1-opt mysql-test/t/loaddata.test: Auto merged sql/sql_load.cc: Auto merged mysql-test/r/loaddata.result: SCCS merged
-
- 08 May, 2007 6 commits
-
-
unknown authored
into moonbone.local:/mnt/gentoo64/work/27670-bug-5.0-opt-mysql
-
unknown authored
TIMESTAMP field when no value has been provided. The LOAD DATA sets the current time in the TIMESTAMP field with CURRENT_TIMESTAMP default value when the field is detected as a null. But when the LOAD DATA command loads data from a file that doesn't contain enough data for all fields then the rest of fields are simply set to null without any check. This leads to no value being inserted to such TIMESTAMP field. Now the read_sep_field() and the read_fixed_length() functions set current time to the TIMESTAMP field with CURRENT_TIMESTAMP default value in all cases when a NULL value is loaded to the field. mysql-test/t/loaddata.test: Added a test case for the bug#27670: LOAD DATA does not set CURRENT_TIMESTAMP default value for a TIMESTAMP field when no value has been provided. mysql-test/r/loaddata.result: Added a test case for the bug#27670: LOAD DATA does not set CURRENT_TIMESTAMP default value for a TIMESTAMP field when no value has been provided. sql/sql_load.cc: Bug#27670: LOAD DATA does not set CURRENT_TIMESTAMP default value for a TIMESTAMP field when no value has been provided. Now the read_sep_field() and the read_fixed_length() functions set current time to the TIMESTAMP field with CURRENT_TIMESTAMP default value in all cases when a NULL value is loaded to the field.
-
unknown authored
After merge fix. sql/item_cmpfunc.cc: After merge fix. sql/item_cmpfunc.h: After merge fix. mysql-test/r/type_datetime.result: After merge fix. mysql-test/t/type_datetime.test: After merge fix.
-
unknown authored
into moonbone.local:/mnt/gentoo64/work/test-5.1-opt-mysql mysql-test/r/func_in.result: Auto merged mysql-test/r/insert_update.result: Auto merged mysql-test/r/type_datetime.result: Auto merged mysql-test/t/insert_update.test: Auto merged mysql-test/t/type_datetime.test: Auto merged sql/item_func.cc: Auto merged sql/handler.cc: Manual merge sql/item_cmpfunc.cc: Manual merge sql/item_cmpfunc.h: Manual merge sql/item_func.h: Manual merge sql/sql_class.h: Manual merge
-
unknown authored
-
unknown authored
-
- 07 May, 2007 18 commits
-
-
unknown authored
-
unknown authored
into moonbone.local:/mnt/gentoo64/work/27759-bug-5.0-opt-mysql
-
unknown authored
mysql-test/t/type_datetime.test: Additional test case for the bug#27759. sql/item_func.h: Bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions. Now the Item_func_min_max::result_as_longlong() returns TRUE when LEAST() compares DATE/DATETIME values. This allows caller to obtain correct integer values through the val_int() function.
-
unknown authored
into gleb.loc:/home/uchum/work/bk/mysql-5.0-opt-27954
-
unknown authored
into xiphis.org:/home/antony/work2/mysql-5.1-merge mysql-test/mysql-test-run.pl: Auto merged sql/ha_ndbcluster.cc: Auto merged sql/item_func.cc: Auto merged sql/mysql_priv.h: Auto merged sql/sql_parse.cc: Auto merged sql/sql_select.cc: Auto merged
-
unknown authored
This bug affects multi-row INSERT ... ON DUPLICATE into table with PRIMARY KEY of AUTO_INCREMENT field and some additional UNIQUE indices. If the first row in multi-row INSERT contains duplicated values of UNIQUE indices, then following rows of multi-row INSERT (with either duplicated or unique key field values) may me applied to _arbitrary_ records of table as updates. This bug was introduced in 5.0. Related code was widely rewritten in 5.1, and 5.1 is already free of this problem. 4.1 was not affected too. When updating the row during INSERT ON DUPLICATE KEY UPDATE, we called restore_auto_increment(), which set next_insert_id back to 0, but we forgot to set clear_next_insert_id back to 0. restore_auto_increment() function has been fixed. sql/sql_class.h: Fixed bug #27954. Added commentary for THD::clear_next_insert_id variable. sql/handler.cc: Fixed bug #27954. When updating the row during INSERT ON DUPLICATE KEY UPDATE, we called restore_auto_increment(), which set next_insert_id back to 0, but we forgot to set clear_next_insert_id back to 0. restore_auto_increment() function has been fixed. mysql-test/t/insert_update.test: Added test case for bug #27954. mysql-test/r/insert_update.result: Added test case for bug #27954.
-
unknown authored
into moonbone.local:/mnt/gentoo64/work/28133-bug-5.0-opt-mysql sql/item_cmpfunc.cc: Auto merged mysql-test/r/type_datetime.result: SCCS merged mysql-test/t/type_datetime.test: SCCS merged
-
unknown authored
The IN function was comparing DATE/DATETIME values either as ints or as strings. Both methods have their disadvantages and may lead to a wrong result. Now IN function checks whether all of its arguments has the STRING result types and at least one of them is a DATE/DATETIME item. If so it uses either an object of the in_datetime class or an object of the cmp_item_datetime class to perform its work. If the IN() function arguments are rows then row columns are checked whether the DATE/DATETIME comparator should be used to compare them. The in_datetime class is used to find occurence of the item to be checked in the vector of the constant DATE/DATETIME values. The cmp_item_datetime class is used to compare items one by one in the DATE/DATETIME context. Both classes obtain values from items with help of the get_datetime_value() function and cache the left item if it is a constant one. mysql-test/t/type_datetime.test: Added a test case for the bug#28133: Wrong DATE/DATETIME comparison in IN() function. mysql-test/r/type_datetime.result: Added a test case for the bug#28133: Wrong DATE/DATETIME comparison in IN() function. mysql-test/r/func_in.result: A test case result is corrected after the fix for the bug#28133. sql/item_cmpfunc.h: Bug#28133: Wrong DATE/DATETIME comparison in IN() function. Two DATE/DATETIME comparison classes are added. The in_datetime class is used to find occurence of the item to be checked in the vector of the constant DATE/DATETIME values. The cmp_item_datetime class is used to compare items one by one in the DATE/DATETIME context. Both classes obtain values from items with help of the get_datetime_value() function and cache the left item if it is a constant one. sql/item_cmpfunc.cc: Bug#28133: Wrong DATE/DATETIME comparison in IN() function. Now IN function checks whether all of its arguments has the STRING result types and at least one of them is a DATE/DATETIME item. If so it uses either an object of the in_datetime class or an object of the cmp_item_datetime class to perform its work. If the IN() function arguments are rows then row columns are checked whether the DATE/DATETIME comparator should be used to compare them.
-
unknown authored
Fixed compiler warnings. sql/item_func.cc: Fixed compiler warnings.
-
unknown authored
mysql-test/r/sp-vars.result: merging
-
unknown authored
into mysql.com:/d2/hf/mrg/mysql-5.1-opt sql/item.cc: Auto merged sql/item.h: Auto merged sql/item_cmpfunc.cc: Auto merged sql/item_func.cc: Auto merged sql/item_subselect.cc: Auto merged sql/sql_select.cc: Auto merged mysql-test/r/sp-vars.result: merging mysql-test/r/type_datetime.result: SCCS merged mysql-test/t/type_datetime.test: SCCS merged sql/item_func.h: merging sql/mysql_priv.h: merging
-
unknown authored
into mysql.com:/d2/hf/mrg/mysql-5.0-opt
-
unknown authored
into mysql.com:/d2/hf/mrg/mysql-5.0-opt sql/item_func.cc: Auto merged sql/item_func.h: Auto merged sql/mysql_priv.h: Auto merged
-
unknown authored
into mysql.com:/d2/hf/mrg/mysql-4.1-opt
-
unknown authored
into mysql.com:/d2/hf/mrg/mysql-5.1-opt sql/ha_ndbcluster.cc: Auto merged sql/item_func.cc: Auto merged
-
unknown authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
-
unknown authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-single-user
-
unknown authored
sql/field.cc: parameters fixed to not interfere with the Field_blob members sql/field.h: BIGENDIAN machine will require 'table' member. so cannot be static
-
- 05 May, 2007 1 commit
-
-
unknown authored
into xiphis.org:/home/antony/work2/mysql-5.1-engines.merge include/my_global.h: Auto merged mysql-test/mysql-test-run.pl: Auto merged scripts/mysql_install_db.sh: Auto merged sql/ha_ndbcluster.cc: Auto merged sql/item_func.cc: Auto merged sql/item_sum.cc: Auto merged sql/mysql_priv.h: Auto merged sql/sql_base.cc: Auto merged sql/sql_lex.h: Auto merged sql/sql_parse.cc: Auto merged sql/sql_select.cc: Auto merged sql/sql_show.cc: Auto merged sql/sql_table.cc: Auto merged sql/sql_yacc.yy: Auto merged sql/table.cc: Auto merged sql/table.h: Auto merged storage/innobase/handler/ha_innodb.cc: manual change to new api
-
- 04 May, 2007 11 commits
-
-
unknown authored
Move copying of global variables into thd.variables into plugin_thdvar_init(). plugin_thdvar_init() may be called multiple times when THD::change_user() is called. This fixes a plugin ref-count leak when running the test mysql_client_test sql/sql_class.cc: wl2936 Initialize thd.variables to zero in constructor. Move copying of global variables into thd.variables into plugin_thdvar_init() sql/sql_plugin.cc: wl2936 Move copying of global variables into thd.variables into plugin_thdvar_init(). plugin_thdvar_init() may be called multiple times when THD::change_user() is called. This fixes a plugin ref-count leak when running the test mysql_client_test
-
unknown authored
into moonbone.local:/mnt/gentoo64/work/27759-bug-5.0-opt-mysql sql/item_func.cc: Auto merged
-
unknown authored
fixed coverage of out-of-mem errors
-
unknown authored
- added join cache indication in EXPLAIN (Extra column). - prefer filesort over full scan over index for ORDER BY (because it's faster). - when switching from REF to RANGE because RANGE uses longer key turn off sort on the head table only as the resulting RANGE access is a candidate for join cache and we don't want to disable it by sorting on the first table only. mysql-test/r/archive_gis.result: bug #27531: join cache in EXPLAIN mysql-test/r/compress.result: bug #27531: - join cache in EXPLAIN. - prefer filesort over full scan over index for ORDER BY. mysql-test/r/ctype_utf8.result: bug #27531: join cache in EXPLAIN mysql-test/r/derived.result: bug #27531: join cache in EXPLAIN mysql-test/r/distinct.result: bug #27531: join cache in EXPLAIN mysql-test/r/func_group.result: bug #27531: join cache in EXPLAIN mysql-test/r/func_group_innodb.result: bug #27531: join cache in EXPLAIN mysql-test/r/gis.result: bug #27531: join cache in EXPLAIN mysql-test/r/greedy_optimizer.result: bug #27531: join cache in EXPLAIN mysql-test/r/group_by.result: bug #27531: join cache in EXPLAIN mysql-test/r/group_min_max.result: bug #27531: join cache in EXPLAIN mysql-test/r/index_merge_myisam.result: bug #27531: join cache in EXPLAIN mysql-test/r/information_schema.result: bug #27531: join cache in EXPLAIN mysql-test/r/innodb_gis.result: bug #27531: join cache in EXPLAIN mysql-test/r/innodb_mysql.result: bug #27531: join cache in EXPLAIN mysql-test/r/join.result: bug #27531: join cache in EXPLAIN mysql-test/r/join_nested.result: bug #27531: join cache in EXPLAIN mysql-test/r/key_diff.result: bug #27531: join cache in EXPLAIN mysql-test/r/myisam.result: bug #27531: join cache in EXPLAIN mysql-test/r/ndb_condition_pushdown.result: bug #27531: join cache in EXPLAIN mysql-test/r/ndb_gis.result: bug #27531: join cache in EXPLAIN mysql-test/r/range.result: bug #27531: join cache in EXPLAIN mysql-test/r/row.result: bug #27531: join cache in EXPLAIN mysql-test/r/select.result: bug #27531: - join cache in EXPLAIN. - prefer filesort over full scan over index for ORDER BY. mysql-test/r/ssl.result: bug #27531: - join cache in EXPLAIN. - prefer filesort over full scan over index for ORDER BY. mysql-test/r/ssl_compress.result: bug #27531: - join cache in EXPLAIN. - prefer filesort over full scan over index for ORDER BY. mysql-test/r/subselect.result: bug #27531: join cache in EXPLAIN mysql-test/r/subselect3.result: bug #27531: join cache in EXPLAIN mysql-test/r/union.result: bug #27531: join cache in EXPLAIN mysql-test/r/view.result: bug #27531: join cache in EXPLAIN sql/sql_select.cc: bug #27531: - join cache in EXPLAIN. - prefer filesort over full scan over index for ORDER BY. - disable sorting on the first table only when switching from REF to RANGE.
-
unknown authored
The LEAST/GREATEST functions compared DATE/DATETIME values as strings which in some cases could lead to a wrong result. A new member function called cmp_datetimes() is added to the Item_func_min_max class. It compares arguments in DATETIME context and returns index of the least/greatest argument. The Item_func_min_max::fix_length_and_dec() function now detects when arguments should be compared in DATETIME context and sets the newly added flag compare_as_dates. It indicates that the cmp_datetimes() function should be called to get a correct result. Item_func_min_max::val_xxx() methods are corrected to call the cmp_datetimes() function when needed. Objects of the Item_splocal class now stores and reports correct original field type. mysql-test/t/type_datetime.test: Added a test case for the bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions. mysql-test/r/type_datetime.result: Added a test case for the bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions. mysql-test/r/sp-vars.result: A test case result corrected after the fix for the bug#27759. sql/mysql_priv.h: Bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions. Added the prototype of the get_datetime_value() function. sql/item_func.h: Bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions. A new member function called cmp_datetimes() is added to the Item_func_min_max class. sql/item_func.cc: Bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions. A new member function called cmp_datetimes() is added to the Item_func_min_max class. It compares arguments in DATETIME context and returns index of the least/greatest argument. The Item_func_min_max::fix_length_and_dec() function now detects when arguments should be compared in DATETIME context and sets the newly added flag compare_as_dates. It indicates that the cmp_datetimes() function should be called to get a correct result. Item_func_min_max::val_xxx() methods are corrected to call the cmp_datetimes() function when needed. sql/item_cmpfunc.cc: Bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions. The get_datetime_value() function is no longer static. sql/item.h: Bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions. Objects of the Item_splocal class now stores and reports correct original field type. sql/item.cc: Bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions. Objects of the Item_splocal class now stores and reports correct original field type.
-
unknown authored
into magare.gmz:/home/kgeorge/mysql/work/B27531-5.1-opt-after-merge mysql-test/r/join.result: Auto merged mysql-test/t/join.test: Auto merged sql/sql_select.cc: Auto merged
-
unknown authored
-
unknown authored
Fix tests when InnoDB is not built-in. Innodb options would cause mysqld to abort with an error indicating that the option is unknown. Fix tests on Windows where mysql-test-run.pl was unable to probe mysqld for version and variables information, caused by output being redirected to a log file instead. mysql-test/mysql-test-run.pl: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/binlog_row_mix_innodb_myisam-master.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is not required here. This test case runs only if innodb is available. In this case the option must be present. mysql-test/t/binlog_stm_mix_innodb_myisam-master.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is not required here. This test case runs only if innodb is available. In this case the option must be present. mysql-test/t/federated_transactions-slave.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/myisam-blob-master.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/rpl_auto_increment-slave.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/rpl_deadlock_innodb-slave.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/rpl_insert_id-slave.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/rpl_insert_id_pk-slave.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/rpl_insert_ignore-slave.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/rpl_multi_engine-slave.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/rpl_ndb_relayrotate-slave.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/rpl_read_only-slave.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/rpl_relayrotate-slave.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/rpl_row_basic_11bugs-master.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/rpl_row_basic_11bugs-slave.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/rpl_row_create_table-slave.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/rpl_row_func003-slave.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/rpl_row_sp003-master.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/rpl_row_sp003-slave.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/rpl_stm_000001-slave.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. mysql-test/t/warnings-master.opt: WL#2936 - Falcon & MySQL plugin interface: server variables 'loose' prefix is required on command line options which may be ignored if the plugin for which the option is intended is not installed/builtin to mysqld. sql/mysqld.cc: WL#2936 - Falcon & MySQL plugin interface: server variables Do not enable the 'old-fashioned error log' when the user has '--help' specified on the command line. We do want the help output sent to the console. This fixes help output on Windows because it enables this option by default.
-
unknown authored
into magare.gmz:/home/kgeorge/mysql/work/B27531-5.0-opt mysql-test/t/join.test: Auto merged sql/sql_select.cc: Auto merged mysql-test/r/join.result: SCCS merged
-
unknown authored
When checking for applicability of join cache we must disable its usage only if there is no temp table in use. When a temp table is used we can use join cache (and it will not make the result-set unordered) to fill the temp table. The filesort() operation is then applied to the data in the temp table and hence is not affected by join cache usage. Fixed by narrowing the condition for disabling join cache to exclude the case where temp table is used. mysql-test/r/join.result: Bug #27531: test case mysql-test/t/join.test: Bug #27531: test case sql/sql_select.cc: Bug #27531: Disable join cache only if not using temp table
-
unknown authored
into magare.gmz:/home/kgeorge/mysql/work/B27531-5.1-opt mysql-test/r/cast.result: Auto merged mysql-test/r/join_outer.result: Auto merged mysql-test/t/cast.test: Auto merged mysql-test/t/join_outer.test: Auto merged sql/item_func.cc: Auto merged sql/item_subselect.cc: Auto merged sql/sql_parse.cc: Auto merged sql/sql_select.cc: Auto merged sql/sql_select.h: Auto merged mysql-test/r/subselect.result: merge of 5.0-opt -> 5.1-opt mysql-test/t/subselect.test: merge of 5.0-opt -> 5.1-opt
-