- 07 Jan, 2009 1 commit
-
-
Davi Arnaut authored
locking type of temp table The problem is that INSERT INTO .. SELECT FROM .. and CREATE TABLE .. SELECT FROM a temporary table could inadvertently overwrite the locking type of the temporary table. The lock type of temporary tables should be a write lock by default. The solution is to reset the lock type of temporary tables back to its default value after they are used in a statement.
-
- 05 Jan, 2009 4 commits
-
-
Georgi Kodinov authored
-
Georgi Kodinov authored
-
Georgi Kodinov authored
-
Georgi Kodinov authored
case.
-
- 31 Dec, 2008 1 commit
-
-
Gleb Shchepa authored
Execution of queries containing the CASE function of aggregate function like in "SELECT ... CASE ARGV(...) WHEN ..." crashed the server. The CASE function caches pointers to concrete comparison functions for an each pair of types of CASE-WHERE clause parameters, i.e. for the "CASE INT_RESULT WHERE REAL_RESULT THEN ... WHERE DECIMAL_RESULT ... END" function call it caches comparisons for INT_RESULT with REAL_RESULT and for INT_RESULT with DECIMAL_RESULT. Usually a result type is known after a call to the fix_fields function, however, the setup_copy_fields function call may wrap aggregate items with Item_copy_string that has STRING_RESULT result type, so setup_copy_fields may change argument result types of the CASE function after call to Item_func_case::fix_fields/fix_length_and_dec. Then the Item_func_case::find_item function tries to use comparison function for unexpected pair of the STRING_RESULT and some other type - that caused an assertion failure of server crash. The Item_func_case::fix_length_and_dec function has been modified to take into account possible STRING_RESULT result type in the presence of aggregate arguments of the CASE function.
-
- 30 Dec, 2008 5 commits
-
-
Tatiana A. Nurnberg authored
-
Tatiana A. Nurnberg authored
-
Tatiana A. Nurnberg authored
-
Tatiana A. Nurnberg authored
-
Sven Sandberg authored
Disabled rpl_binlog_corruption since it requires the new mtr, which only exists in 5.1-rpl / 6.0-rpl. Please re-enable the test in 5.1-rpl / 6.0-rpl.
-
- 29 Dec, 2008 4 commits
-
-
Sven Sandberg authored
Problem: When an Incident_log_event contains a bad incident number on disk, the server crashes with an assertion. Fix: Don't validate input with assertions. Use errors.
-
Sergey Glukhov authored
The problem: data file can not be deleted on win because there is another opened instance of this file. Data file might be opened twice, on table opening stage and during write_row execution. We need to close both instances to satisfy Win.
-
Sergey Glukhov authored
-
Sergey Glukhov authored
Added global status variable 'Queries' which represents total amount of queries executed by server including statements executed by SPs. note: It's old behaviour of 'Questions' variable.
-
- 28 Dec, 2008 5 commits
-
-
Joerg Bruehe authored
-
Joerg Bruehe authored
-
Kent Boortz authored
-
Kent Boortz authored
-
Kent Boortz authored
-
- 24 Dec, 2008 8 commits
-
-
Sergey Glukhov authored
-
Sergey Glukhov authored
Table could be marked dependent because it is either 1) an inner table of an outer join, or 2) it is a part of STRAIGHT_JOIN. In case of STRAIGHT_JOIN table->maybe_null should not be assigned. The fix is to set st_table::maybe_null to 'true' only for those tables which are used in outer join.
-
Sergey Glukhov authored
-
Sergey Glukhov authored
init user->user struct with thd->security_ctx->priv_user context if user->user is not initializied
-
Sergey Glukhov authored
-
Sergey Glukhov authored
replace wild_case_compare with my_wildcmp which is multibyte safe function
-
Sergey Glukhov authored
-
Sergey Glukhov authored
-
- 23 Dec, 2008 7 commits
-
-
Sergey Glukhov authored
On Winodws FN_DEVCHAR is ':' symbol. There is a check in mysql_create_table_no_lock() func on FN_DEVCHAR presence but this code is obsolete and unnecessary. So the fix is to remove unnecessary code.
-
Sergey Glukhov authored
-
Sergey Glukhov authored
The problem is that we cannot insert new record into memory table when table size exceeds max memory table size. The fix is to use schema_table_store_record() function which converts memory table into MyISAM in case of table size exceeding. Note: There is no test case for this bug, the reason is that 1. The code that was added already is checked(i.e. works) with existing tests 2. Correct work of schema_table_store_record() is checked with other test cases (information_schema tests) So new code is fully covered with existing test cases.
-
Sergey Glukhov authored
-
Sergey Glukhov authored
The MONTHNAME/DAYNAME functions returns binary string, so the LOWER/UPPER functions are not effective on the result of MONTHNAME/DAYNAME call. Character set of the MONTHNAME/DAYNAME function result has been changed to connection character set.
-
Sergey Petrunia authored
-
Sergey Vojtovich authored
-
- 22 Dec, 2008 1 commit
-
-
Sergey Petrunia authored
-
- 19 Dec, 2008 4 commits
-
-
Matthias Leich authored
-
Sergey Petrunia authored
- QUICK_INDEX_MERGE_SELECT deinitializes its rnd_pos() scan when it reaches EOF, but we need to make the deinitialization in QUICK_INDEX_MERGE_SELECT destructor also. This is because certain execution strategies can stop scanning without reaching EOF, then then try to do a full table scan on this table. Failure to deinitialize caused the full scan to use (already empty) table->sort and produce zero records.
-
Davi Arnaut authored
-
Davi Arnaut authored
resolve_stack_dump is not able to decode a stack trace produced by glibc's backtrace() functions. The problem is that the stack trace addresses are printed between brackets and the utility is not able to ignore the brackets. The solution is to modify resolve_stack_dump so it can recognize stack trace addresses surrounded by brackets. e.g. [0xdeadbeef].
-