- 11 May, 2006 1 commit
-
-
unknown authored
When a view statement is compiled on CREATE VIEW time, most of the optimizations should not be done. Finding the right optimization for a subquery is one of them. Unfortunately the optimizer is resolving the column references of the left expression of IN subqueries in the process of deciding witch optimization to use (if needed). So there should be a special case in Item_in_subselect::fix_fields() : check the validity of the left expression of IN subqueries in CREATE VIEW mode and then proceed as normal. mysql-test/r/subselect.result: test case mysql-test/r/view.result: chnaged explain due to column being resolved mysql-test/t/subselect.test: test case sql/item_subselect.cc: overloaded fix_fields to fix the left_expr in prepare_view_mode sql/item_subselect.h: fix_fields overloaded so it can prepare left_expr
-
- 10 May, 2006 3 commits
- 09 May, 2006 9 commits
-
-
unknown authored
into xiphis.org:/home/antony/work2/mysql-5.0-engines-merge
-
unknown authored
into xiphis.org:/home/antony/work2/p1-bug10952.1 sql/handler.h: Auto merged sql/sql_table.cc: Auto merged
-
unknown authored
"alter table from MyISAM to MERGE lost data without errors and warnings" Add new handlerton flag which prevent user from altering table storage engine to storage engines which would lose data. Both 'blackhole' and 'merge' are marked with the new flag. Tests included. mysql-test/r/blackhole.result: test for bug#10952 mysql-test/r/merge.result: test for bug#10952 mysql-test/t/blackhole.test: test for bug#10952 mysql-test/t/merge.test: test for bug#10952 sql/ha_blackhole.cc: Bug#10952 shouldn't be able to alter a table into a blackhole sql/ha_myisammrg.cc: Bug#10952 shouldn't be able to alter a table into a merge sql/handler.h: Bug#10952 new handlerton flag sql/sql_table.cc: Bug#10952 If alter is changing engine, check if new engine allows creating table via ALTER statement.
-
unknown authored
When converting DISTINCT to GROUP BY where the columns are from the covering index and they are quoted twice in the SELECT list the optimizer is creating improper processing sequence. This is because of the fact that the columns of the covering index are not recognized as such and treated as non-index columns. Generally speaking duplicate columns can safely be removed from the GROUP BY/DISTINCT list because this will not add or remove new rows in the resulting set. Duplicates can be removed even if they are not consecutive (as is the case for ORDER BY, where the duplicate columns can be removed only if they are consecutive). So we can safely transform "SELECT DISTINCT a,a FROM ... ORDER BY a" to "SELECT a,a FROM ... GROUP BY a ORDER BY a" instead of "SELECT a,a FROM .. GROUP BY a,a ORDER BY a". We can even transform "SELECT DISTINCT a,b,a FROM ... ORDER BY a,b" to "SELECT a,b,a FROM ... GROUP BY a,b ORDER BY a,b". The fix to this bug consists of checking for duplicate columns in the SELECT list when constructing the GROUP BY list in transforming DISTINCT to GROUP BY and skipping the ones that are already in. mysql-test/r/distinct.result: test case for the bug without loose index scan mysql-test/r/group_min_max.result: test case for the bug mysql-test/t/distinct.test: test case for the bug without loose index scan mysql-test/t/group_min_max.test: test case for the bug sql/sql_select.cc: duplicates check and removal
-
unknown authored
into mysql.com:/home/marty/MySQL/mysql-5.0
-
unknown authored
into mysql.com:/home/marty/MySQL/mysql-5.0 ndb/src/kernel/blocks/dbtc/DbtcInit.cpp: Auto merged
-
unknown authored
-
unknown authored
into neptunus.(none):/home/msvensson/mysql/mysql-5.0 sql/item_func.cc: Auto merged sql/sql_acl.cc: Auto merged
-
unknown authored
into neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint client/mysqltest.c: Auto merged mysql-test/mysql-test-run.pl: Auto merged sql/mysql_priv.h: Auto merged
-
- 08 May, 2006 5 commits
-
-
unknown authored
No commit message
-
unknown authored
into mysql.com:/Users/kent/mysql/bk/mysql-5.0-new configure.in: Auto merged
-
unknown authored
Add function 'vio_end' that will cleanup resources allocated by vio and the components it uses. include/violite.h: Import patch warnings.patch libmysql/libmysql.c: Import patch warnings.patch sql/mysqld.cc: Import patch warnings.patch vio/test-ssl.c: Import patch warnings.patch vio/test-sslclient.c: Import patch warnings.patch vio/test-sslserver.c: Import patch warnings.patch vio/vio.c: Import patch warnings.patch vio/viosslfactories.c: Import patch warnings.patch
-
unknown authored
into neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
-
unknown authored
into neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint extra/yassl/src/ssl.cpp: Auto merged extra/yassl/taocrypt/src/make.bat: Auto merged extra/yassl/testsuite/test.hpp: Auto merged
-
- 07 May, 2006 11 commits
-
-
unknown authored
into rurik.mysql.com:/home/igor/mysql-5.0 mysql-test/r/rpl_user_variables.result: Auto merged sql/item_func.cc: Auto merged sql/sql_select.cc: Auto merged mysql-test/t/rpl_user_variables.test: Manual merge
-
unknown authored
-
unknown authored
into rurik.mysql.com:/home/igor/dev/mysql-5.0-0 mysql-test/r/having.result: Auto merged mysql-test/t/having.test: Auto merged sql/item_func.cc: Auto merged sql/sql_lex.h: Auto merged mysql-test/r/rpl_user_variables.result: Manual merge mysql-test/t/rpl_user_variables.test: Manual merge sql/sql_lex.cc: Manual merge sql/sql_prepare.cc: Manual merge sql/sql_select.cc: Manual merge
-
unknown authored
into rurik.mysql.com:/home/igor/mysql-4.1
-
unknown authored
into mysql.com:/usr_rh9/home/elkin.rh9/MySQL/Merge/5.0-bug19136 sql/sql_select.cc: Auto merged
-
unknown authored
recalculating results mysql-test/r/rpl_user_variables.result: fixing results
-
unknown authored
-
unknown authored
find_best() call best_access_path().
-
unknown authored
into mysql.com:/usr_rh9/home/elkin.rh9/MySQL/Merge/5.0-bug19136 sql/item_func.cc: Auto merged sql/sql_select.cc: Auto merged mysql-test/r/rpl_user_variables.result: manual merge use local mysql-test/t/rpl_user_variables.test: manual merge use version 5.0's "show binlog events from 98"
-
unknown authored
into mysql.com:/usr_rh9/home/elkin.rh9/MySQL/FIXES/4.1-bug19136_unass_user_var sql/item_func.cc: Auto merged
-
unknown authored
A query with a group by and having clauses could return a wrong result set if the having condition contained a constant conjunct evaluated to FALSE. It happened because the pushdown condition for table with grouping columns lost its constant conjuncts. Pushdown conditions are always built by the function make_cond_for_table that ignores constant conjuncts. This is apparently not correct when constant false conjuncts are present. mysql-test/r/having.result: Added a test case for bug #14927. mysql-test/t/having.test: Added a test case for bug #14927. sql/sql_lex.cc: Fixed bug #14927. Initialized fields for having conditions in st_select_lex::init_query(). sql/sql_lex.h: Fixed bug #14927. Added a field to restore having condititions for execution in SP and PS. sql/sql_prepare.cc: Fixed bug #14927. Added code to restore havinf conditions for execution in SP and PS. sql/sql_select.cc: Fixed bug #14927. Performed evaluation of constant expressions in having clauses. If the having condition contains a constant conjunct that is always false an empty result set is returned after the optimization phase. In this case the corresponding EXPLAIN command now returns "Impossible HAVING" in the last column.
-
- 06 May, 2006 11 commits
-
-
unknown authored
into mysql.com:/home/psergey/mysql-5.0-bug16798-merge
-
unknown authored
into mysql.com:/home/psergey/mysql-4.1-bug16798
-
unknown authored
into mysql.com:/home/tomash/src/mysql_ab/mysql-5.0-merge mysql-test/r/func_misc.result: Auto merged mysql-test/t/func_misc.test: Auto merged
-
unknown authored
into mysql.com:/home/tomash/src/mysql_ab/mysql-4.1-bug16501
-
unknown authored
into mysql.com:/home/tomash/src/mysql_ab/mysql-4.1-bug16501
-
unknown authored
mysql-test/r/func_misc.result: Update the result.
-
unknown authored
into mysql.com:/home/mydev/mysql-4.1-bug10405
-
unknown authored
into mysql.com:/home/mydev/mysql-5.0-bug10405
-
unknown authored
into mysql.com:/home/psergey/mysql-4.1-bug16798
-
unknown authored
into mysql.com:/home/psergey/mysql-5.0-bug16798-merge sql/sql_select.cc: Auto merged
-
unknown authored
The bug was as follows: When merge_key_fields() encounters "t.key=X OR t.key=Y" it will try to join them into ref_or_null access via "t.key=X OR NULL". In order to make this inference it checks if Y<=>NULL, ignoring the fact that value of Y may be not yet known. The fix is that the check if Y<=>NULL is made only if value of Y is known (i.e. it is a constant). TODO: When merging to 5.0, replace used_tables() with const_item() everywhere in merge_key_fields(). mysql-test/r/innodb_mysql.result: Testcase for BUG16798 mysql-test/t/innodb_mysql.test: Testcase for BUG16798 sql/sql_select.cc: BUG#16798: Inapplicable ref_or_null query plan and bad query result on random occasions In merge_key_fields() don't call val->is_null() if the value of val is not known.
-