- 24 Jul, 2009 2 commits
-
-
V Narayanan authored
-
Alexander Barkov authored
"WL#4584 New euckr characters" from 5.4. (as agreed on ServerPT meeting on July 8).
-
- 23 Jul, 2009 2 commits
-
-
Staale Smedseng authored
-
Staale Smedseng authored
not logged Errors encountered during initialization of the SSL subsystem are printed to stderr, rather than to the error log. This patch adds a parameter to several SSL init functions to report the error (if any) out to the caller. The function init_ssl() in mysqld.cc is moved after the initialization of the log subsystem, so that any error messages can be logged to the error log. Printing of messages to stderr has been retained to get diagnostic output in a client context. include/violite.h: Adding an enumeration for the various errors that can occur during initialization of the SSL module. sql/mysqld.cc: Adding more logging of SSL init errors, and moving init_ssl() till after initialization of logging subsystem. vio/viosslfactories.c: Define error strings, provide an access method for these strings, and maintain an error parameter in several funcs to return the error (if any) to the caller.
-
- 22 Jul, 2009 1 commit
-
-
Konstantin Osipov authored
-
- 19 Jul, 2009 3 commits
-
-
Evgeny Potemkin authored
-
Evgeny Potemkin authored
-
Alfranio Correia authored
-
- 18 Jul, 2009 3 commits
-
-
Alfranio Correia authored
binlog The fix for BUG 43929 introduced a regression issue. In a nutshell, when a statement that changes a non-transactional table fails, it is written to the binary log with the error code appended. Unfortunately, after BUG 43929, this failure was flushing the transactional chace causing mismatch between execution and logging histories. To fix this issue, we avoid flushing the transactional cache when a commit or rollback is not issued.
-
Evgeny Potemkin authored
-
Evgeny Potemkin authored
When during the optimization an item is moved to the upper select the item's context left unchanged. This caused wrong result in the PS/SP mode. The Item_ident::remove_dependence_processor now sets the context of the select to which the item is moved to. mysql-test/r/subselect.result: The test case for the bug#46051 is adjusted. mysql-test/t/subselect.test: The test case for the bug#46051 is adjusted. sql/item.cc: Bug#46051: Incorrectly market field caused wrong result. The Item_ident::remove_dependence_processor now sets the context of the select to which the item is moved to.
-
- 17 Jul, 2009 5 commits
-
-
Evgeny Potemkin authored
-
V Narayanan authored
-
V Narayanan authored
-
unknown authored
Append the patch for resolving the problems, which have been brought by commiting bug#45214.
-
unknown authored
-
- 16 Jul, 2009 10 commits
-
-
Evgeny Potemkin authored
In a subselect all fields from outer selects are marked as dependent on selects they are belong to. In some cases optimizer substitutes it for an equivalent expression. For example "a_field IN (SELECT outer_field)" is substituted with "a_field = outer_field". As we moved the outer_field to the upper select it's not really outer anymore. But it was left marked as outer. If exists an index over a_field optimizer choose wrong execution plan and thus return wrong result. Now the Item_in_subselect::single_value_transformer function removes dependent marking from fields when a subselect is optimized away. mysql-test/r/subselect.result: Added a test case for the bug#46051. mysql-test/t/subselect.test: Added a test case for the bug#46051. sql/item_subselect.cc: Bug#46051: Incorrectly market field caused wrong result. Now the Item_in_subselect::single_value_transformer function removes dependent marking from fields when a subselect is optimized away.
-
Georgi Kodinov authored
-
Georgi Kodinov authored
-
Georgi Kodinov authored
-
Georgi Kodinov authored
Fixed various compilation warnings when compiling on a 64 bit windows.
-
Georgi Kodinov authored
-
Kristofer Pettersson authored
-
Georgi Kodinov authored
-
Georgi Kodinov authored
-
unknown authored
The "get_master_version_and_clock(...)" function in sql/slave.cc ignores error and passes directly when queries fail, or queries succeed but the result retrieved is empty. The "get_master_version_and_clock(...)" function should try to reconnect master if queries fail because of transient network problems, and fail otherwise. The I/O thread should print a warning if the some system variables do not exist on master (very old master) mysql-test/extra/rpl_tests/rpl_get_master_version_and_clock.test: Added test file for bug #45214 mysql-test/suite/rpl/r/rpl_get_master_version_and_clock.result: Added test result for bug #45214 mysql-test/suite/rpl/t/rpl_get_master_version_and_clock.test: Added test file for bug #45214 sql/slave.cc: The 'is_network_error()' function is added for checking if the error is caused by network. Added a new return value (2) to 'get_master_version_and_clock()' function result set to indicate transient network errors when queries fail, and the caller should try to reconnect in this case.
-
- 15 Jul, 2009 9 commits
-
-
Kristofer Pettersson authored
table The MERGE table storage engine does not support the HA_CAN_SQL_HANDLE feature and any attempt to open the merge table will fail with ER_ILLEGAL_HA. After an error occurred the tables that was opened must be closed again or they will be left in an inconsistent state. However, the assumption made in the code for closing and register handler tables was that only one table will be opened, and this is not true for MERGE tables which will cause multiple tables to open. The next time a SELECT operation was issued on the merge table it caused the system to freeze. This patch fixes this issue by making sure that all tables which are opened also are closed in the event of an error. mysql-test/r/merge.result: Added test case for bug 45781 mysql-test/t/merge.test: Added test case for bug 45781 sql/sql_handler.cc: * mysql_ha_open() was never ment to open more than one table. If we encounter more tables, we should close all tables related to the current substatement and raise an exception.
-
Davi Arnaut authored
Merge Konstantin's patch and add a test case. tests/mysql_client_test.c: Add test case for Bug#44495
-
Konstantin Osipov authored
failed" Do not assume that SQL prepared statements always run in text protocol. When invoked from a stored procedure, which is itself invoked by means of prepared CALL statement, the protocol may be binary. Juggle with the protocol only when we want to change it to binary in COM_STMT_EXECUTE, COM_STMT_PREPARE. This is a backport from 5.4/6.0, where the bug was fixed as part of WL#4264 "Backup: Stabilize Service Interface"
-
Georgi Kodinov authored
-
Georgi Kodinov authored
Fixed the following problems: 1. cmake 2.6 warning because of a changed default on how the dependencies to libraries with a specified path are resolved. Fixed by requiring cmake 2.6. 2. Removed an obsolete pre-NT4 hack including defining Windows system defines to alter the behavior of windows.h. 3. Disabled warning C4065 on compiling sql_yacc.cc because of a know incompatibility in some of the newer bison binaries.
-
Ramil Kalimullin authored
-
Anurag Shekhar authored
-
Anurag Shekhar authored
match against. Server crashes when executing prepared statement with duplicating MATCH() function calls in SELECT and ORDER BY expressions, e.g.: SELECT MATCH(a) AGAINST('test') FROM t1 ORDER BY MATCH(a) AGAINST('test') This query gets optimized by the server, so the value returned by MATCH() from the SELECT list is reused for ORDER BY purposes. To make this optimization server is comparing items from SELECT and ORDER BY lists. We were getting server crash because comparision function for MATCH() item is not intended to be called at this point of execution. In 5.0 and 5.1 this problem is workarounded by resetting MATCH() item to the state as it was during PREPARE. In 6.0 correct comparision function will be implemented and duplicating MATCH() items from the ORDER BY list will be optimized. mysql-test/r/fulltext.result: Updated with the test case for Bug#37740 mysql-test/t/fulltext.test: A test case for Bug#37740. sql/item_func.h: True initialization of 'table' happens in ::fix_fields(). As Item_func_match::eq() may be called before ::fix_fields(), it is expected that 'table' is initialized to 0 when it is reused. This is mostly affecting prepared statements, when the same item doesn't get destroyed, but rather cleaned up and reused.
-
Ramil Kalimullin authored
-
- 14 Jul, 2009 5 commits
-
-
Jim Winstead authored
-
Ramil Kalimullin authored
"create as select" (innodb table) Problem: code constructing "CREATE TABLE..." statement doesn't take into account that current database is not set in some cases. That may lead to a server crash. Fix: check if current database is set. mysql-test/extra/binlog_tests/binlog.test: Fix for bug#45998: database crashes when running "create as select" (innodb table) - test case. mysql-test/suite/binlog/r/binlog_row_binlog.result: Fix for bug#45998: database crashes when running "create as select" (innodb table) - test result. sql/sql_show.cc: Fix for bug#45998: database crashes when running "create as select" (innodb table) - added check if there's current database set.
-
Georgi Kodinov authored
-
Georgi Kodinov authored
-
Georgi Kodinov authored
-