summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Bug #20748: Configuration files should not be read more than onceunknown2007-11-076-66/+195
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A user could not override system-wide settings in their ~/.my.cnf, because the DEFAULT_SYSCONFDIR was being searched last. Also, in some configurations (especially when the --sysconfdir compile-time option is set to /etc or /etc/mysql), the system-wide my.cnf file was read multiple times, causing confusion and potential problems. Rearrange default directories to conform to the manual and logic. Move --sysconfdir=<path> (DEFAULT_SYSCONFDIR) from the last default directory to the middle of the list. $HOME/.my.cnf should be last, so the user is able to override the system-wide settings. Change init_default_directories() to remove duplicates from the list. include/my_sys.h: Add array_append_string_unique(), from mf_arr_appstr.c libmysql/Makefile.shared: Add new mf_arr_appstr.lo object mysys/CMakeLists.txt: Add new mf_arr_appstr.c source. mysys/Makefile.am: Add new mf_arr_appstr.c source. mysys/default.c: Change order in which defaults files are added to default_directories, in order to conform to the manual (and to common sense). This fixes a particularly bad problem on Unix, where ~/.my.cnf was read before /usr/local/etc/my.cnf. Also, don't add duplicate entries; move the existing entry to the end of the list instead. Here is a comparison of the order of defaults files, BEFORE and AFTER this patch. On Windows: BEFORE: C:\, GetWindowsDirectory(), GetSystemWindowsDirectory(), $MYSQL_HOME, defaults-extra-file, INSTALLDIR AFTER: GetSystemWindowsDirectory(), GetWindowsDirectory(), C:\, INSTALLDIR, $MYSQL_HOME, defaults-extra-file GetSystemWindowsDirectory() is moved before GetWindowsDirectory() because the former is shared by all Terminal Services users, while the latter is private for each user. On Netware (no change): BEFORE: sys:/etc/, $MYSQL_HOME, defaults-extra-file AFTER: sys:/etc, $MYSQL_HOME, defaults-extra-file On OS/2: BEFORE: $ETC, /etc, $MYSQL_HOME, defaults-extra-file AFTER: /etc, $ETC, $MYSQL_HOME, defaults-extra-file On everything else (general Unix): BEFORE: /etc, $MYSQL_HOME, defaults-extra-file, ~/, --sysconfdir AFTER: /etc/, --sysconfdir, $MYSQL_HOME, defaults-extra-file, ~/ The BEFORE code added --sysconfdir on all systems, but only the Unix build system actually defined a value for it. mysys/mf_arr_appstr.c: BitKeeper file /home/tsmith/m/bk/build/50-b20748/mysys/mf_arr_appstr.c
* Allow for different directories containing the "libc",unknown2007-10-151-1/+1
| | | | | | | | | | as it may well happen with 32- vs 64-bit Linux systems. This patch was proposed immediately with the report of Bug #29658 wrong test for static nss checking on linux, doesn't cover all platforms
* Bug#31289 vm-win2003-64-b build failures on PushBuild due to manifestunknown2007-10-081-8/+9
| | | | | | | | | | | tool error - Move disable manifest generation commands to more global location. CMakeLists.txt: Bug#31289 vm-win2003-64-b build failures on PushBuild due to manifest tool error - Disable Manifests by default for VS 7 and 8.
* Merge trift2.:/MySQL/M50/mysql-5.0unknown2007-10-041-5/+7
|\ | | | | | | | | | | | | into trift2.:/MySQL/M50/push-5.0
| * testScanFilter.cpp:unknown2007-10-021-5/+7
| | | | | | | | | | | | | | | | Updated variable size arrays to use vector like Jonas did for 5.1 so that my build would not break ndb/test/ndbapi/testScanFilter.cpp: Updated variable size arrays to use vector like Jonas did for 5.1 so that my build would not break
* | Merge production.mysql.com:/usersnfs/jperkin/bk/build/5.0unknown2007-10-043-0/+12
|\ \ | | | | | | | | | | | | | | | | | | into production.mysql.com:/usersnfs/jperkin/bk/bug-27692/5.0
| * | Restore creation of test databases and the anonymous user whichunknown2007-10-043-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | were accidentally removed during a previous rototill of this code. Fixes bug#27692. While it can be argued we should strive to provide a 'secure by default' installation, this happens to be the setup currently documented in the manual as the default, so defer changes that improve security out of the box to a co-ordinated effort later on. For now, make a note about the test databases and anonymous user in mysql_install_db and recommend that mysql_secure_installation be ran for users wishing to remove these defaults. [..re-commit of previously lost change..] scripts/mysql_system_tables_data.sql: Add anonymous accounts. scripts/mysql_install_db.sh: Point users at the mysql_secure_installation script. mysql-test/mysql-test-run.pl: Add a comment where removing anonymous users.
* | | Merge trift2.:/MySQL/M50/mysql-5.0unknown2007-10-011-0/+14
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | into trift2.:/MySQL/M50/push-5.0
| * | Merge ↵unknown2007-09-271-0/+14
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build-work-vista into pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
| | * | avoid using GetTempFileName in a way it's documented to not work on windowsunknown2007-09-271-0/+14
| | |/ | | | | | | | | | | | | mysys/mf_tempfile.c: Try to avoid passing null as first parameter to GetTempFileName, since it's documented that it won't work.
* | | Raise version number after cloning 5.0.50unknown2007-09-261-2/+2
|/ /
* | Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0unknown2007-09-2526-118/+404
|\ \ | |/ |/| | | | | | | | | into pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
| * result fixunknown2007-09-201-1/+1
| |
| * Bug#27747 database metadata doesn't return sufficient column default infounknown2007-09-2017-114/+162
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * Merge mysql.com:/home/gluh/MySQL/Merge/5.0unknown2007-09-1910-5/+243
| |\ | | | | | | | | | | | | | | | | | | into mysql.com:/home/gluh/MySQL/Merge/5.0-opt
| | * select.test:unknown2007-09-151-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | Post-fix for bug#27695. mysql-test/t/select.test: Post-fix for bug#27695.
| | * Merge gshchepa@bk-internal.mysql.com:/home/bk/mysql-5.0-optunknown2007-09-146-1/+173
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | into devsrv-b.mysql.com:/data0/gshchepa/mysql-5.0-opt
| | | * Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-optunknown2007-09-143-1/+127
| | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into magare.gmz:/home/kgeorge/mysql/autopush/B31001-5.0-opt
| | | | * Bug #31001: ORDER BY DESC in InnoDB not workingunknown2007-09-143-1/+127
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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).
| | | * | Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0-optunknown2007-09-143-0/+46
| | | |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into mysql.com:/home/psergey/mysql-5.0-bug30324
| | | | * | BUG#30324: Grouping queries with COUNT(DISTINCT bit column) return wrong resultsunknown2007-09-143-0/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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.
| | * | | | Merge devsrv-b.mysql.com:/users/gshchepa/mysql-5.0-optunknown2007-09-144-4/+66
| | |\ \ \ \ | | | |/ / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | into devsrv-b.mysql.com:/data0/gshchepa/mysql-5.0-opt
| | | * | | Merge gshchepa@bk-internal.mysql.com:/users/gshchepa/mysql-5.0-optunknown2007-09-144-4/+66
| | | |\ \ \ | | | | |_|/ | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | into gleb.loc:/home/uchum/work/bk/5.0-opt-27695
| | | | * | Fixed bug #27695.unknown2007-09-134-4/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Declaring an all space column name in the SELECT FROM DUAL or in a view leads to misleading warning message: "Leading spaces are removed from name ' '". The Item::set_name method has been modified to raise warnings like "Name ' ' has become ''" in case of the truncation of an all space identifier to an empty string identifier instead of the "Leading spaces are removed from name ' '" warning message. sql/item.cc: Fixed bug #27695. The Item::set_name method has been modified to raise warnings like "Name ' ' has become ''" in case of the truncation of an all space identifier to an empty string identifier instead of the "Leading spaces are removed from name ' '" warning message. sql/share/errmsg.txt: Fixed bug #27695. mysql-test/t/select.test: Added test case for bug #27695. mysql-test/r/select.result: Added test case for bug #27695.
* | | | | | Revert previous attempt to fix bug#27693, the files removed from theunknown2007-09-221-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cmake list are auto-generated and thus still required. Correct fix not yet known. bdb/CMakeLists.txt: Revert previous change, it is incorrect as those files are automatically generated.
* | | | | | Merge trift2.:/MySQL/M41/push-4.1unknown2007-09-140-0/+0
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into trift2.:/MySQL/M50/push-5.0
| * \ \ \ \ \ Merge trift2.:/MySQL/M41/mysql-4.1unknown2007-09-143-1/+26
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into trift2.:/MySQL/M41/push-4.1
* | \ \ \ \ \ \ Merge trift2.:/MySQL/M50/mysql-5.0unknown2007-09-1483-232/+3080
|\ \ \ \ \ \ \ \ | | |_|/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into trift2.:/MySQL/M50/push-5.0
| * | | | | | | Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0unknown2007-09-1425-27/+576
| |\ \ \ \ \ \ \ | | | |_|/ / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
| | * | | | | | Merge gleb.loc:/home/uchum/work/bk/5.0unknown2007-09-141-5/+2
| | |\ \ \ \ \ \ | | | |_|_|/ / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into gleb.loc:/home/uchum/work/bk/5.0-opt
| | | * | | | | Merge trift2.:/MySQL/M50/push-5.0unknown2007-09-131-5/+2
| | | |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into trift2.:/MySQL/M50/tmp-5.0
| | * | \ \ \ \ \ Merge gshchepa@bk-internal.mysql.com:/home/bk/mysql-5.0-optunknown2007-09-131-2/+2
| | |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into gleb.loc:/home/uchum/work/bk/5.0-opt
| | | * | | | | | | Better wording in commentsunknown2007-09-121-2/+2
| | | | | | | | | |
| | * | | | | | | | Merge gleb.loc:/home/uchum/work/bk/5.0unknown2007-09-1224-20/+572
| | |\ \ \ \ \ \ \ \ | | | |/ / / / / / / | | | | / / / / / / | | | |/ / / / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into gleb.loc:/home/uchum/work/bk/5.0-opt sql/sql_yacc.yy: Auto merged mysql-test/r/sp.result: SCCS merged mysql-test/t/sp.test: SCCS merged
| | | * | | | | | Post-merge fixesunknown2007-09-121-1/+0
| | | | | | | | |
| | | * | | | | | Post-merge fixesunknown2007-09-111-1/+0
| | | | | | | | |
| | | * | | | | | Merge mysql.com:/home/psergey/mysql-4.1-bug30385unknown2007-09-113-1/+27
| | | |\ \ \ \ \ \ | | | | | |_|/ / / | | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into mysql.com:/home/psergey/mysql-5.0-bug30385 sql/opt_range.cc: Auto merged mysql-test/r/delete.result: Manual merge mysql-test/t/delete.test: Manual merge
| | | | * | | | | BUG#30385: Server crash when deleting with ORDER BY and LIMITunknown2007-09-103-1/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in get_index_for_order(), don't walk over the end of the index key parts when matching index description and needed ordering. mysql-test/r/delete.result: BUG#30385: Testcase mysql-test/t/delete.test: BUG#30385: Testcase
| | | * | | | | | Merge gleb.loc:/home/uchum/work/bk/5.0unknown2007-09-0623-18/+546
| | | |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into gleb.loc:/home/uchum/work/bk/5.0-opt mysql-test/r/sp.result: Auto merged mysql-test/t/sp.test: Auto merged
| | | | * \ \ \ \ \ Merge mhansson@bk-internal.mysql.com:/home/bk/mysql-5.0-optunknown2007-09-033-2/+98
| | | | |\ \ \ \ \ \ | | | | | |_|_|_|_|/ | | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into dl145s.mysql.com:/data0/mhansson/my50-bug30234-push sql/sql_yacc.yy: Auto merged
| | | | | * | | | | Bug #30234: Unexpected behavior using DELETE with AS and USINGunknown2007-09-033-2/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DELETE FROM ... USING ... statements with the following type of ambiguous aliasing gave unexpected results: DELETE FROM t1 AS alias USING t1, t2 AS alias WHERE t1.a = alias.a; This query would leave table t1 intact but delete rows from t2. Fixed by changing DELETE FROM ... USING syntax so that only alias references (as opposed to alias declarations) may be used in FROM. mysql-test/r/delete.result: Bug#30234: Test Result mysql-test/t/delete.test: Bug#30234: Test Case sql/sql_yacc.yy: Bug#30234: - Added parser rule table_alias_ref_list that contains a list of table aliases only. - Added parser rule table_alias_ref that sets the TL_OPTION_ALIAS in order to turn off semantic checking that applies only for table names.
| | | | * | | | | | Bug#29408 Cannot find view in columns table if the selection contains a functionunknown2007-09-034-1/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use view db name as thread default database, in order to ensure that the view is parsed and prepared correctly. mysql-test/r/sp.result: test result mysql-test/t/sp.test: test case sql/sql_parse.cc: copy thd->db_length to table_list->db_length sql/sql_view.cc: Use view db name as thread default database, in order to ensure that the view is parsed and prepared correctly.
| | | | * | | | | | Merge gleb.loc:/home/uchum/work/bk/5.0-opt-30126unknown2007-08-315-1/+21
| | | | |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into gleb.loc:/home/uchum/work/bk/5.0-opt
| | | | | * | | | | | Fixed bug #30126.unknown2007-08-315-1/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When dumping database from a 4.x server, the mysqldump client inserted a delimiter sign inside special commentaries of the form: /*!... CREATE DATABASE IF NOT EXISTS ... ;*/ During restoration that dump file was splitten by delimiter signs on the client side, and the rest of some commentary strings was prepended to following statements. The 4x_server_emul test case option has been added for use with the DBUG_EXECUTE_IF debugging macro. This option affects debug server builds only to emulate particular behavior of a 4.x server for the mysqldump client testing. Non-debugging builds are not affected. mysql-test/r/mysqldump-compat.result: Added test case for bug #30126. mysql-test/t/mysqldump-compat.opt: Added test case for bug #30126. mysql-test/t/mysqldump-compat.test: Added test case for bug #30126. sql/sql_parse.cc: Fixed bug #30126. The mysqldump client uses the "SHOW CREATE DATABASE" query to obtain the "CREATE DATABASE" statement from that database. The 4.x server doesn't recognise that query, and mysqldump forms the "CREATE DATABASE" statement from scratch. That statement was formed incorrectly. To enforce the mysqldump client to create that statement from scratch, debugging code has been added to the mysql_execute_command function: in tcase of the --loose-debug=d,4x_server_emul option, the server returns parse error to client to emulate old behaviour. The 4x_server_emul test case option has been added for use with the DBUG_EXECUTE_IF debugging macro. This option affects debug server builds only to emulate particular behavior of a 4.x server for the mysqldump client testing. Non-debugging builds are not affected. client/mysqldump.c: Fixed bug #30126. The init_dumping_tables function has been modified to output semicolon outside of commentaries.
| | | | * | | | | | | Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-optunknown2007-08-294-2/+108
| | | | |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into magare.gmz:/home/kgeorge/mysql/autopush/B30377-5.0-opt sql/sql_select.cc: Auto merged
| | | | | * | | | | | | Bug #30377: EXPLAIN loses last_query_cost when used with UNIONunknown2007-08-284-2/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the Last_query_cost session status variable shows only the cost of a single flat subselect. For complex queries (with subselects or unions etc) Last_query_cost is not valid as it was showing the cost for the last optimized subselect. Fixed by reseting to zero Last_query_cost when the complete cost of the query cannot be determined. Last_query_cost will be non-zero only for single flat queries. mysql-test/r/status.result: Bug #30377: test case mysql-test/t/status.test: Bug #30377: test case sql/sql_lex.h: Bug #30377: helper function sql/sql_select.cc: Bug #30377: don't assign cost if not on single level statement
| | | | * | | | | | | | Merge mhansson@bk-internal.mysql.com:/home/bk/mysql-5.0-optunknown2007-08-297-3/+168
| | | | |\ \ \ \ \ \ \ \ | | | | | |_|_|_|_|_|_|/ | | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into linux-st28.site:/home/martin/mysql/src/bugx/my50-bugx mysql-test/t/innodb_mysql.test: Auto merged sql/sql_select.cc: Auto merged mysql-test/r/innodb_mysql.result: SCCS merged
| | | | | * | | | | | | Bug #30596 GROUP BY optimization gives wrong result orderunknown2007-08-277-3/+168
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The optimization that uses a unique index to remove GROUP BY, did not ensure that the index was actually used, thus violating the ORDER BY that is impled by GROUP BY. Fixed by replacing GROUP BY with ORDER BY if the GROUP BY clause contains a unique index. In case GROUP BY ... ORDER BY null is used, GROUP BY is simply removed. BitKeeper/etc/ignore: Added support-files/mysqld_multi.server tests/bug25714 cscope.in.out cscope.out cscope.po.out to the ignore list mysql-test/r/distinct.result: Bug#30596: Changed test case. Prior to Bug#16458, These queries use temp table and filesort. The bug was that they used a temp table. However, that patch removed filesort also, in which case we can no longer gurantee correct ordering. mysql-test/r/group_by.result: Bug#30596: Correct result mysql-test/r/innodb_mysql.result: Bug#30596: Test case for innodb. Here, as opposed to for MyISAM, row lookup is done using index whenever the index covers the group list. mysql-test/t/group_by.test: Bug#30596: Test case mysql-test/t/innodb_mysql.test: Bug#30596: Test case sql/sql_select.cc: Bug#30596: The fix, replacing GROUP BY with ORDER BY unless ORDER BY [NULL|<constant>]
| | | | * | | | | | | | Merge gleb.loc:/home/uchum/work/bk/5.0unknown2007-08-263-9/+81
| | | | |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into gleb.loc:/home/uchum/work/bk/5.0-opt
| | | | | * \ \ \ \ \ \ \ Merge gleb.loc:/home/uchum/work/bk/5.0unknown2007-08-253-9/+81
| | | | | |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into gleb.loc:/home/uchum/work/bk/5.0-opt