- 21 Nov, 2007 2 commits
-
-
unknown authored
into magare.gmz:/home/kgeorge/mysql/autopush/B30788-5.0-opt sql/item.h: Auto merged sql/sql_select.cc: Auto merged mysql-test/r/subselect.result: merge of 5.0-opt mysql-test/t/subselect.test: merge of 5.0-opt
-
unknown authored
Index lookup does not always guarantee that we can simply remove the relevant conditions from the WHERE clause. Reasons can be e.g. conversion errors, partial indexes etc. The optimizer was removing these parts of the WHERE condition without any further checking. This leads to "false positives" when using indexes. Fixed by checking the index reference conditions (using WHERE) when using indexes with sub-queries. mysql-test/r/subselect.result: Bug #30788: - using where - test case mysql-test/r/subselect3.result: Bug #30788: using where mysql-test/t/subselect.test: Bug #30788: test case sql/item.h: Bug #30788: - Declare eq() method of Item_cache descendants : this is used in test_if_ref() - preserve the field that is being cached for type comparisions sql/sql_select.cc: Bug #30788: Don't remove the WHERE when using index lookup with subqueries.
-
- 20 Nov, 2007 8 commits
-
-
unknown authored
into moonbone.local:/work/31048-bug-5.0-opt-mysql
-
unknown authored
Additional stack check for the bug#31048. sql/sql_select.cc: Additional stack check for the bug#31048.
-
unknown authored
into gleb.loc:/work/bk/5.0-opt
-
unknown authored
8bit escape characters, termination and enclosed characters were silently ignored by SELECT INTO query, but LOAD DATA INFILE algorithm is 8bit-clean, so data was corrupted during encoding. sql/sql_class.cc: Fixed bug #32533. SELECT INTO OUTFILE encoding was not 8bit clear, it has been fixed for a symmetry with the LOAD DATA INFILE decoding algorithm. mysql-test/t/outfile_loaddata.test: Added test case for bug #32533. mysql-test/r/outfile_loaddata.result: Added test case for bug #32533.
-
unknown authored
into mysql.com:/home/hf/work/mysql-5.0-opt
-
unknown authored
mysql-test/r/gis.result: test result complete mysql-test/t/gis.test: test case added for the bug
-
unknown authored
into mysql.com:/home/hf/work/31868/my50-31868 sql/sql_table.cc: merging
-
unknown authored
into mysql.com:/home/hf/work/31868/my41-31868
-
- 19 Nov, 2007 8 commits
-
-
unknown authored
into moonbone.local:/work/31048-bug-5.0-opt-mysql
-
unknown authored
into moonbone.local:/work/31048-bug-5.0-opt-mysql sql/item_subselect.cc: Auto merged mysql-test/r/subselect.result: Manual merge mysql-test/t/subselect.test: Manual merge
-
unknown authored
into moonbone.local:/work/30384-bug-5.0-opt-mysql sql/sql_class.h: Auto merged
-
unknown authored
led to creating corrupted index. Corrected fix. The new method called prepare2 is added to the select_create class. As all preparations are done by the select_create::prepare function it doesn't do anything. Slightly changed algorithm of calling the start_bulk_insert function. Now it's called from the select_insert::prepare2 function when the SQL_BUFFER_RESULT flags is set. The is_bulk_insert_mode flag is removed as it is not needed anymore. sql/sql_class.h: Bug#30384: Having SQL_BUFFER_RESULT option in the CREATE .. KEY(..) .. SELECT led to creating corrupted index. Corrected fix. The new method called prepare2 is added to the select_create class. As all preparetions are done by the select_create::prepare function it doesn't do anything. The is_bulk_insert_mode flag is removed as it is not needed anymore. sql/sql_insert.cc: Bug#30384: Having SQL_BUFFER_RESULT option in the CREATE .. KEY(..) .. SELECT led to creating corrupted index. Slightly changed algorithm of calling the start_bulk_insert function. Now it's called from the select_insert::prepare2 function when the SQL_BUFFER_RESULT flags is set. Corrected fix. The is_bulk_insert_mode flag is removed as it is not needed anymore.
-
unknown authored
This bug is actually two. The first one manifests itself on an EXPLAIN SELECT query with nested subqueries that employs the filesort algorithm. The whole SELECT under explain is marked as UNCACHEABLE_EXPLAIN to preserve some temporary structures for explain. As a side-effect of this values of nested subqueries weren't cached and subqueries were re-evaluated many times. Each time buffer for filesort was allocated but wasn't freed because freeing occurs at the end of topmost SELECT. Thus all available memory was eaten up step by step and OOM event occur. The second bug manifests itself on SELECT queries with conditions where a subquery result is compared with a key field and the subquery itself also has such condition. When a long chain of such nested subqueries is present the stack overrun occur. This happens because at some point the range optimizer temporary puts the PARAM structure on the stack. Its size if about 8K and the stack is exhausted very fast. Now the subselect_single_select_engine::exec function allows subquery result caching when the UNCACHEABLE_EXPLAIN flag is set. Now the SQL_SELECT::test_quick_select function calls the check_stack_overrun function for stack checking purposes to prevent server crash. mysql-test/t/subselect.test: Added a test case for the bug#31048: Many nested subqueries may cause server crash. mysql-test/r/subselect.result: Added a test case for the bug#31048: Many nested subqueries may cause server crash. sql/opt_range.cc: Bug#31048: Many nested subqueries may cause server crash. Now the SQL_SELECT::test_quick_select function calls the check_stack_overrun function for stack checking purposes to preven server crash. sql/item_subselect.cc: Bug31048: Many nested subqueries may cause server crash. Now the subselect_single_select_engine::exec function allows subquery result caching when the UNCACHEABLE_EXPLAIN flag is set.
-
unknown authored
bytes length. The server has been modified to report warnings on truncation to 65536 bytes as usual. sql/sql_string.cc: Fixed bug #32282. The well_formed_copy_nchars function returned an incorrect value of copied bytes of the truncated input string: extra length of the first truncated character added to the *from_end_pos pointer. That has been fixed. mysql-test/r/type_blob.result: Added test case for bug #32282. mysql-test/t/type_blob.test: Added test case for bug #32282.
-
unknown authored
into polly.(none):/home/kaa/src/opt/mysql-5.0-opt client/mysql.cc: Auto merged
-
unknown authored
disables the option explicitely. Changed the option location in code so that --help will show it in lexical option order. This is for bug #26215: mysql command line client should not strip comments from SQL statements client/mysql.cc: Changed the help text for --comments to make it clear which option disables the option explicitely. Changed the option location in code so that --help will show it in lexical option order.
-
- 17 Nov, 2007 7 commits
-
-
unknown authored
into gleb.loc:/work/bk/5.0-opt
-
unknown authored
Comparison of a BIGINT NOT NULL column with a constant arithmetic expression that evaluates to NULL caused error 1048: "Column '...' cannot be null". Made convert_constant_item() check if the constant expression is NULL before attempting to store it in a field. Attempts to store NULL in a NOT NULL field caused query errors. sql/item_cmpfunc.cc: Fixed bug #32335. 1. Made convert_constant_item() check if the constant expression is NULL before attempting to store it in a field. Attempts to store NULL in a NOT NULL field caused query errors. 2. Also minor bug has been fixed: the thd->count_cuted_fields value was not restored in case of successful conversion. mysql-test/t/select.test: Added test case for bug #32335. mysql-test/r/select.result: Added test case for bug #32335.
-
unknown authored
into mysql.com:/home/hf/work/31158/my50-31158
-
unknown authored
into mysql.com:/home/hf/work/31158/my41-31158
-
unknown authored
into mysql.com:/home/hf/work/31158/my50-31158 sql/field.cc: Auto merged
-
unknown authored
-
unknown authored
into mysql.com:/home/hf/work/31158/my50-31158 mysql-test/t/gis.test: Auto merged sql/field.h: Auto merged sql/item_geofunc.cc: Auto merged mysql-test/r/gis.result: merging sql/field.cc: merging
-
- 16 Nov, 2007 4 commits
-
-
unknown authored
into polly.(none):/home/kaa/src/opt/mysql-5.0-opt sql/sql_select.cc: Auto merged
-
unknown authored
checked for each record' The problem was in incorrectly calculated length of the buffer used to store a hexadecimal representation of an index map in select_describe(). This could result in buffer overrun and stack corruption under some circumstances. Fixed by correcting the calculation. mysql-test/r/explain.result: Added a test case for bug #32241. mysql-test/t/explain.test: Added a test case for bug #32241. sql/sql_select.cc: Corrected the buffer length calculation. Count one hex digit as 4 bits, not 8.
-
unknown authored
into mysql.com:/home/gluh/MySQL/Merge/5.0-opt
-
unknown authored
Implement neccessary shared lock structure for table locks. This is the backport of bug26241 fix. sql/ha_blackhole.cc: Implement neccessary shared lock structure for table locks. sql/ha_blackhole.h: Declare shared structure for table locks sql/handler.cc: added BLACKHOLE_DB case
-
- 15 Nov, 2007 1 commit
-
-
unknown authored
into magare.gmz:/home/kgeorge/mysql/autopush/B31928-5.0-opt mysql-test/r/type_date.result: Auto merged mysql-test/t/type_date.test: Auto merged
-
- 14 Nov, 2007 4 commits
-
-
unknown authored
-
unknown authored
into mysql.com:/home/gluh/MySQL/Merge/5.0-opt
-
unknown authored
into mysql.com:/home/gluh/MySQL/Merge/5.0-opt mysql-test/t/subselect.test: Auto merged mysql-test/t/variables.test: Auto merged sql/item_func.cc: Auto merged sql/item_timefunc.cc: Auto merged mysql-test/r/select.result: manual merge mysql-test/t/select.test: manual merge
-
unknown authored
into mysql.com:/home/gluh/MySQL/Merge/4.1-opt
-
- 13 Nov, 2007 6 commits
-
-
unknown authored
into mysql.com:/home/hf/work/31305/my50-31305
-
unknown authored
into mysql.com:/home/hf/work/31305/my50-31305
-
unknown authored
into mysql.com:/home/hf/work/31305/my41-31305
-
unknown authored
into magare.gmz:/home/kgeorge/mysql/autopush/B31562-5.0-opt sql/item.cc: Auto merged sql/sql_select.cc: Auto merged
-
unknown authored
The columns in HAVING can reference the GROUP BY and SELECT columns. There can be "table" prefixes when referencing these columns. And these "table" prefixes in HAVING use the table alias if available. This means that table aliases are subject to the same storage rules as table names and are dependent on lower_case_table_names in the same way as the table names are. Fixed by : 1. Treating table aliases as table names and make them lowercase when printing out the SQL statement for view persistence. 2. Using case insensitive comparison for table aliases when requested by lower_case_table_names mysql-test/r/lowercase_view.result: Bug #31562: test case mysql-test/t/lowercase_view.test: Bug #31562: test case sql/item.cc: Bug #31562: lower_case_table_name contious comparison when searching in GROUP BY sql/sql_base.cc: Bug #31562: lower_case_table_name contious comparison when searching in SELECT sql/sql_select.cc: Bug #31562: treat table aliases as table names and make them lowercase when printing
-
unknown authored
max_length parameter for BLOB-returning functions must be big enough for any possible content. Otherwise the field created for a table will be too small. mysql-test/r/gis.result: Bug #31158 Spatial, Union, LONGBLOB vs BLOB bug (crops data) test result mysql-test/t/gis.test: Bug #31158 Spatial, Union, LONGBLOB vs BLOB bug (crops data) test case sql/field.cc: Bug #31158 Spatial, Union, LONGBLOB vs BLOB bug (crops data) max_field_size used instead of numeric value sql/field.h: Bug #31158 Spatial, Union, LONGBLOB vs BLOB bug (crops data) max_field_size constant defined sql/item_geofunc.cc: Bug #31158 Spatial, Union, LONGBLOB vs BLOB bug (crops data) max_length parameter fixed
-