- 14 Aug, 2006 1 commit
-
-
unknown authored
optimizer does not honor IGNORE INDEX - Allow an index to be used for sorting the table instead of filesort only if it is not disabled by IGNORE INDEX. mysql-test/r/group_by.result: Bug #21174: Index degrades sort performance and optimizer does not honor IGNORE INDEX - test case mysql-test/t/group_by.test: Bug #21174: Index degrades sort performance and optimizer does not honor IGNORE INDEX - test case
-
- 01 Aug, 2006 4 commits
-
-
unknown authored
into rakia.(none):/home/kgeorge/mysql/autopush/B20103-5.0-opt
-
unknown authored
- make the client to respect the server-side no_backslash_escapes option and disable the special meaning of backslash also at client side. mysql-test/r/mysql_client.result: Bug #20103: Escaping with backslash does not work - test case mysql-test/t/mysql_client.test: Bug #20103: Escaping with backslash does not work - test case
-
unknown authored
into rakia.(none):/home/kgeorge/mysql/autopush/B11551-5.0-opt
-
unknown authored
into sunlight.local:/local_work/tmp_merge-5.0-opt-mysql
-
- 31 Jul, 2006 5 commits
-
-
unknown authored
After merge fix mysql-test/r/select.result: After merge fix mysql-test/r/func_group.result: After merge fix sql/sql_select.cc: After merge fix
-
unknown authored
into rakia.(none):/home/kgeorge/mysql/autopush/B11551-5.0-opt mysql-test/r/view.result: Auto merged mysql-test/t/view.test: Auto merged sql/sql_view.cc: Auto merged
-
unknown authored
made DROP VIEW to continue on error and report an aggregated error at its end. This makes it similar to DROP TABLE. mysql-test/r/view.result: Bug #11551: Asymmetric + undocumented behaviour of DROP VIEW and DROP TABLE - test case - changed error message mysql-test/t/view.test: Bug #11551: Asymmetric + undocumented behaviour of DROP VIEW and DROP TABLE - test case sql/sql_view.cc: Bug #11551: Asymmetric + undocumented behaviour of DROP VIEW and DROP TABLE - made DROP VIEW to continue on error and report an aggregated error
-
unknown authored
into macbook.gmz:/Users/kgeorge/mysql/work/B21080-5.0-opt mysql-test/r/view.result: merge mysql-test/t/view.test: merge
-
unknown authored
When executing ALTER TABLE all the attributes of the view were overwritten. This is contrary to the user's expectations. So some of the view attributes are preserved now : namely security and algorithm. This means that if they are not specified in ALTER VIEW their values are preserved from CREATE VIEW instead of being defaulted. mysql-test/r/view.result: Bug #21080: ALTER VIEW makes user restate SQL SECURITY mode, and ALGORITHM - test suite mysql-test/t/view.test: Bug #21080: ALTER VIEW makes user restate SQL SECURITY mode, and ALGORITHM - test suite sql/sql_lex.h: Bug #21080: ALTER VIEW makes user restate SQL SECURITY mode, and ALGORITHM - must make create_view_suid a tristate : on/off/unspecified sql/sql_view.cc: Bug #21080: ALTER VIEW makes user restate SQL SECURITY mode, and ALGORITHM - open the view to get it's attributes and put then as defaults for ALTER VIEW sql/sql_yacc.yy: Bug #21080: ALTER VIEW makes user restate SQL SECURITY mode, and ALGORITHM - must make create_view_suid a tristate : on/off/unspecified sql/table.h: Bug #21080: ALTER VIEW makes user restate SQL SECURITY mode, and ALGORITHM - must make create_view_suid a tristate : on/off/unspecified
-
- 29 Jul, 2006 1 commit
-
-
unknown authored
into sunlight.local:/local_work/tmp_merge-5.0-opt-mysql mysql-test/t/select.test: Auto merged sql/sql_select.cc: Auto merged mysql-test/r/func_group.result: Manual merge mysql-test/r/select.result: Manual merge mysql-test/r/subselect.result: Manual merge
-
- 27 Jul, 2006 3 commits
-
-
unknown authored
into rakia.(none):/home/kgeorge/mysql/autopush/B21019-5.0-opt sql/sql_select.cc: Auto merged
-
unknown authored
into rakia.(none):/home/kgeorge/mysql/autopush/B20792-4.1-opt sql/sql_select.cc: Auto merged
-
unknown authored
into rakia.(none):/home/kgeorge/mysql/autopush/B20792-5.0-opt sql/sql_select.cc: Auto merged
-
- 26 Jul, 2006 10 commits
-
-
unknown authored
into moonbone.local:/work/19862-bug-5.0-opt-mysql
-
unknown authored
Post review changes for bug#19862. sql/sql_select.cc: Post review changes for bug#19862. sql/item_func.h: Post review changes for bug#19862. sql/item_func.cc: Post review changes for bug#19862. sql/item.h: Post review changes for bug#19862.
-
unknown authored
into rakia.(none):/home/kgeorge/mysql/autopush/B20792-4.1-opt sql/sql_select.cc: Auto merged
-
unknown authored
into macbook.gmz:/Users/kgeorge/mysql/work/B20792-5.0-opt mysql-test/r/subselect2.result: Auto merged sql/sql_select.cc: Auto merged
-
unknown authored
When processing aggregate functions all tables values are reset to NULLs at the end of each group. When doing that if there are no rows found for a group the const tables must not be reset as they are not recalculated by do_select()/sub_select() for each group. mysql-test/r/subselect2.result: * Bug #20792: Incorrect results from aggregate subquery - test suite for the bug. This is dependent on InnoDB despite the fact that the bug and the fix are not InnoDB specific. This is because of the table flag HA_NOT_EXACT_COUNT. When this flag is off (as in MyISAM) both t2 and t3 become of join type 'system' as they are estimated to have 1 record and and this statistics can be trusted (according to the absence of HA_NOT_EXACT_COUNT). mysql-test/t/subselect2.test: * Bug #20792: Incorrect results from aggregate subquery - test suite for the bug sql/sql_select.cc: * Bug #20792: Incorrect results from aggregate subquery - when clearing results if there are not rows found for group the const tables must not be reset as they are not recalculated for each group.
-
unknown authored
into rakia.(none):/home/kgeorge/mysql/autopush/B21019-4.1-opt sql/sql_select.cc: Auto merged mysql-test/r/select.result: SCCS merged mysql-test/t/select.test: SCCS merged
-
unknown authored
Correct merge
-
unknown authored
into macbook.gmz:/Users/kgeorge/mysql/work/B21019-5.0-opt mysql-test/t/select.test: Auto merged sql/sql_select.cc: Auto merged mysql-test/r/select.result: SCCS merged
-
unknown authored
When optimizing conditions like 'a = <some_val> OR a IS NULL' so that they're united into a single condition on the key and checked together the server must check which value is the NULL value in a correct way : not only using ->is_null but also check if the expression doesn't depend on any tables referenced in the current statement. This additional check must be performed because that optimization takes place before the actual execution of the statement, so if the field was initialized to NULL from a previous statement the optimization would be applied incorrectly. mysql-test/r/select.result: Bug #21019: First result of SELECT COUNT(*) different than consecutive runs - test case mysql-test/t/select.test: Bug #21019: First result of SELECT COUNT(*) different than consecutive runs - test case. Note that ALTER TABLE is important here : it happens to leave the Field instance for t1.b set to NULL, witch is vital for demonstrating the problem fixed by this changeset. sql/sql_select.cc: Bug #21019: First result of SELECT COUNT(*) different than consecutive runs - check whether a value is null taking into account its table dependency.
-
unknown authored
into rakia.(none):/home/kgeorge/mysql/autopush/B21086-5.0-opt
-
- 25 Jul, 2006 9 commits
-
-
unknown authored
into lamia.home:/home/tkatchaounov/autopush/4.1-bug-20954 mysql-test/r/subselect.result: Auto merged
-
unknown authored
The problem was in that opt_sum_query() replaced MIN/MAX functions with the corresponding constant found in a key, but due to imprecise representation of float numbers, when evaluating the where clause, this comparison failed. When MIN/MAX optimization detects that all tables can be removed, also remove all conjuncts in a where clause that refer to these tables. As a result of this fix, these conditions are not evaluated twice, and in the case of float number comparisons we do not discard result rows due to imprecise float representation. As a side-effect this fix also corrects an unnoticed problem in bug 12882. mysql-test/r/func_group.result: BUG#20954 - test result adjustment. Adjusted the test result of bug 12882 which was not preperly fixed. The current patch corrects the problem that was fully corrected by the patch for 12882. The problem was that opt_sum_query() indicated that the optimizer may remove all tables because all MIN/MAX/COUNT functions are constants, but this lead to an empty result instead of NULL because the WHERE clause was still evaluated. The current fix removes all conjuncts in the where clause that reference the removed tables, and thus corrects the problem. mysql-test/r/select.result: BUG#20954 - added test mysql-test/r/subselect.result: BUG#20954 - test result adjustment. The fix removes those conditions in a where clause that refer to tables optimized away by MIN/MAX optimization (opt_sum_query()). mysql-test/t/select.test: BUG#20954 - added test sql/sql_select.cc: Fix for BUG#20954: avg(keyval) retuns 0.38 but max(keyval) returns an empty set When MIN/MAX optimization detects that all tables can be removed, also remove all conjuncts in a where clause that refer to these tables. As a result of this fix, these conditions are not evaluated twice, and in the case of float number comparisons we do not discard result rows due to imprecise float representation. As a side-effect this fix also corrects an unnoticed problem in bug 12882.
-
unknown authored
into moonbone.local:/work/19862-bug-5.0-opt-mysql sql/item_func.h: Auto merged sql/sql_select.cc: Auto merged
-
unknown authored
When there is no index defined filesort is used to sort the result of a query. If there is a function in the select list and the result set should be ordered by it's value then this function will be evaluated twice. First time to get the value of the sort key and second time to send its value to a user. This happens because filesort when sorts a table remembers only values of its fields but not values of functions. All functions are affected. But taking into account that SP and UDF functions can be both expensive and non-deterministic a temporary table should be used to store their results and then sort it to avoid twice SP evaluation and to get a correct result. If an expression referenced in an ORDER clause contains a SP or UDF function, force the use of a temporary table. A new Item_processor function called func_type_checker_processor is added to check whether the expression contains a function of a particular type. mysql-test/t/udf.test: Added test case for bug#19862: Sort with filesort by function evaluates function twice mysql-test/t/sp.test: Added test case for bug#19862: Sort with filesort by function evaluates function twice mysql-test/r/sp.result: Added test case for bug#19862: Sort with filesort by function evaluates function twice mysql-test/r/udf.result: Added test case for bug#19862: Sort with filesort by function evaluates function twice sql/sql_select.cc: Fixed bug#19862: Sort with filesort by function evaluates function twice If an expression referenced in an ORDER clause contains a SP or UDF function, force the use of a temporary table. sql/item_func.h: Fixed bug#19862: Sort with filesort by function evaluates function twice A new Item_processor function called func_type_checker_processor is added to check whether the expression contains a function of a particular type. sql/item.h: Fixed bug#19862: Sort with filesort by function evaluates function twice A new Item_processor function called func_type_checker_processor is added to check whether the expression contains a function of a particular type. sql/item_func.cc: Fixed bug#19862: Sort with filesort by function evaluates function twice A new Item_processor function called func_type_checker_processor is added to check whether the expression contains a function of a particular type.
-
unknown authored
into olga.mysql.com:/home/igor/mysql-5.0-opt
-
unknown authored
When executing INSERT over a view with calculated columns it was assuming all elements of the fields collection are actually Item_field instances. This may not be true when inserting into a view and that view has columns that are such expressions that allow updating (like setting a collation for example). Corrected to access field information through the filed_for_view_update() function and retrieve correctly the field info even for "update-friendly" non-Item_field items. mysql-test/r/view.result: Bug #21086: server crashes when VIEW defined with a SELECT with COLLATE clause is called - test suite mysql-test/t/view.test: Bug #21086: server crashes when VIEW defined with a SELECT with COLLATE clause is called - test suite sql/item_strfunc.h: Bug #21086: server crashes when VIEW defined with a SELECT with COLLATE clause is called - obvious typo fixed sql/sql_base.cc: Bug #21086: server crashes when VIEW defined with a SELECT with COLLATE clause is called - must access field information through the filed_for_view_update() function to retrieve correctly the field info even for "update-friendly" non-Item_field items.
-
unknown authored
into rakia.(none):/home/kgeorge/mysql/autopush/B16712-5.0-opt sql/item_sum.cc: Auto merged sql/sql_select.cc: Auto merged
-
unknown authored
when calculating GROUP_CONCAT all blob fields are transformed to varchar when making the temp table. However a varchar has at max 2 bytes for length. This fix makes the conversion only for blobs whose max length is below that limit. Otherwise blob field is created by make_string_field() call. mysql-test/r/func_gconcat.result: Bug#16712: group_concat returns odd srting insead of intended result * testsuite for the bug mysql-test/t/func_gconcat.test: Bug#16712: group_concat returns odd srting insead of intended result * testsuite for the bug sql/item_sum.cc: Bug#16712: group_concat returns odd srting insead of intended result * force blob->varchar conversion for small enough blobs only sql/sql_select.cc: Bug#16712: group_concat returns odd srting insead of intended result * force blob->varchar conversion for small enough blobs only
-
unknown authored
a non-correlated single-row subquery over information schema. The function get_all_tables filling all information schema tables reset lex->sql_command to SQLCOM_SHOW_FIELDS. After this the function could evaluate partial conditions related to some columns. If these conditions contained a subquery over information schema it led to a wrong evaluation and a wrong result set. This bug was already fixed in 5.1. This patch follows the way how it was done in 5.1 where the value of lex->sql_command is set to SQLCOM_SHOW_FIELDS in get_all_tables only for the calls of the function open_normal_and_derived_tables and is restored after these calls. mysql-test/r/information_schema.result: Added a test case for bug #21231. mysql-test/t/information_schema.test: Added a test case for bug #21231.
-
- 22 Jul, 2006 7 commits
-
-
unknown authored
into olga.mysql.com:/home/igor/mysql-5.0-opt
-
unknown authored
subqueries on information schema that use MIN/MAX aggregation. Execution of some correlated subqueries may set the value of null_row to 1 for tables used in the subquery. If the the subquery is on information schema it causes rejection of any row for the following executions of the subquery in the case when an optimization filtering by some condition is applied. The fix restores the value of the null_row flag for each execution of a subquery on information schema. mysql-test/r/information_schema.result: Added a test case for bug #18925. mysql-test/t/information_schema.test: Added a test case for bug #18925. sql/sql_show.cc: Fixed bug #18925. Execution of some correlated subqueries may set the value of null_row to 1 for tables used in the subquery. If the the subquery is on information schema it causes rejection of any row for the following execitions of the subquery in the case when an optimization filtering by some condition is applied. The fix restores the value of the null_row flag for each execution of a subquery on information schema.
-
unknown authored
into macbook.mshome.net:/Users/kgeorge/mysql/work/B20466-5.0-opt sql/sql_select.cc: Auto merged
-
unknown authored
into rakia.(none):/home/kgeorge/mysql/autopush/B20868-5.0-opt
-
unknown authored
-
unknown authored
into rakia.(none):/home/kgeorge/mysql/autopush/B20868-5.0-opt
-
unknown authored
into mysql.com:/home/psergey/mysql-5.0-opt2
-