- 19 Nov, 2007 1 commit
-
-
evgen@moonbone.local 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.
-
- 23 Oct, 2007 18 commits
-
-
sergefp@mysql.com authored
-
sergefp@foxhole.(none) authored
into mysql.com:/home/psergey/mysql-5.0-bug31450
-
sergefp@mysql.com authored
- Let Item::save_in_field() call set_field_to_null_with_conversions() for decimal type, like this is done for the other item result types.
-
gluh@eagle.(none) authored
into mysql.com:/home/gluh/MySQL/Merge/5.0-opt
-
gluh@eagle.(none) authored
into mysql.com:/home/gluh/MySQL/Merge/5.0-opt
-
holyfoot/hf@hfmain.(none) authored
into mysql.com:/home/hf/work/30638/my50-30638
-
ssh://bk-internal.mysql.com//home/bk/mysql-5.0-optkaa@polly.(none) authored
into polly.(none):/home/kaa/src/opt/mysql-5.0-opt
-
gkodinov/kgeorge@magare.gmz authored
into magare.gmz:/home/kgeorge/mysql/autopush/B30825-new-5.0-opt
-
kaa@polly.(none) authored
into polly.(none):/home/kaa/src/opt/mysql-5.0-opt
-
holyfoot/hf@mysql.com/hfmain.(none) authored
-
gkodinov/kgeorge@magare.gmz authored
into magare.gmz:/home/kgeorge/mysql/autopush/B30825-new-5.0-opt
-
holyfoot/hf@hfmain.(none) authored
into mysql.com:/home/hf/work/30638/my50-30638
-
holyfoot/hf@mysql.com/hfmain.(none) authored
-
gkodinov/kgeorge@magare.gmz authored
into magare.gmz:/home/kgeorge/mysql/autopush/B30825-new-5.0-opt
-
holyfoot/hf@hfmain.(none) authored
into mysql.com:/home/hf/work/30638/my50-30638
-
holyfoot/hf@mysql.com/hfmain.(none) authored
-
gluh@mysql.com/eagle.(none) authored
into mysql.com:/home/gluh/MySQL/Merge/4.1-opt
-
gkodinov/kgeorge@magare.gmz authored
into magare.gmz:/home/kgeorge/mysql/autopush/B30825-new-5.0-opt
-
- 22 Oct, 2007 4 commits
-
-
gkodinov/kgeorge@magare.gmz authored
When doing indexed search the server constructs a key image for faster comparison to the stored keys. While doing that it must not perform (and stop if they fail) the additional date checks that can be turned on by the SQL mode because there already may be values in the table that don't comply with the error checks. Fixed by ignoring these SQL mode bits while making the key image.
-
kaa@polly.(none) authored
an error, asserts server In case of a fatal error during filesort in find_all_keys() the error was returned without the necessary handler uninitialization. Fixed by changing the code so that handler uninitialization is performed before returning the error.
-
holyfoot/hf@hfmain.(none) authored
into mysql.com:/home/hf/work/30638/my50-30638
-
holyfoot/hf@hfmain.(none) authored
into mysql.com:/home/hf/work/30638/my50-30638
-
- 21 Oct, 2007 3 commits
-
-
tnurnberg@white.intern.koehntopp.de authored
into mysql.com:/scratch/tnurnberg/31588/50-31588
-
kaa@polly.(none) authored
into polly.(none):/home/kaa/src/opt/mysql-5.0-opt
-
kaa@polly.(none) authored
Since, as of MySQL 5.0.15, CHAR() arguments larger than 255 are converted into multiple result bytes, a single CHAR() argument can now take up to 4 bytes. This patch fixes Item_func_char::fix_length_and_dec() to take this into account. This patch also fixes a regression introduced by the patch for bug21513. As now we do not always have the 'name' member of Item set for Item_hex_string and Item_bin_string, an own print() method has been added to Item_hex_string so that it could correctly be printed by Item_func::print_args().
-
- 19 Oct, 2007 3 commits
-
-
antony@anubis.xiphis.org authored
into anubis.xiphis.org:/usr/home/antony/work/mysql-5.0-engines.merge
-
antony@pcg5ppc.xiphis.org authored
into anubis.xiphis.org:/usr/home/antony/work/mysql-5.0-engines.merge
-
into anubis.xiphis.org:/usr/home/antony/work/mysql-4.1-engines.merge
-
- 18 Oct, 2007 8 commits
-
-
malff@lambda.hsd1.co.comcast.net. authored
into lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-rt-merge
-
tnurnberg@white.intern.koehntopp.de authored
into mysql.com:/scratch/tnurnberg/31588/50-31588
-
gkodinov/kgeorge@magare.gmz authored
into magare.gmz:/home/kgeorge/mysql/autopush/B31221-5.0-opt
-
gkodinov/kgeorge@magare.gmz authored
No warning was generated when a TIMESTAMP with a non-zero time part was converted to a DATE value. This caused index lookup to assume that this is a valid conversion and was returning rows that match a comparison between a TIMESTAMP value and a DATE keypart. Fixed by generating a warning on such a truncation.
-
holyfoot/hf@mysql.com/hfmain.(none) authored
The BIG_TABLES define wasn't enabled on Windows. #define added
-
tnurnberg@sin.intern.azundris.com authored
into sin.intern.azundris.com:/misc/mysql/31588/41-31588
-
tnurnberg@sin.intern.azundris.com authored
into sin.intern.azundris.com:/misc/mysql/31588/50-31588
-
tnurnberg@sin.intern.azundris.com authored
Buffer used when setting variables was not dimensioned to accomodate trailing '\0'. An overflow by one character was therefore possible. CS corrects limits to prevent such overflows.
-
- 17 Oct, 2007 3 commits
-
-
dkatz@damien-katzs-computer.local authored
Previously, UDF *_init functions were passed constant strings with erroneous lengths. The length came from the containing variable's size, not the length of the value itself. Now the *_init functions get the constant as a null terminated string with the correct length supplied too.
-
tsmith@ramayana.hindu.god authored
in middle of block)
-
gluh@mysql.com/eagle.(none) authored
updated result files
-