- 05 Jul, 2011 1 commit
-
-
unknown authored
-
- 21 Jun, 2011 1 commit
-
-
Alexander Nozdrin authored
OLD VALUE OF INPUT PARAMETER. The user-visible problem was that CASE-control-flow function (not CASE-statement) misbehaved in stored routines under some circumstances. The problem resulted in a crash or wrong data returned. The error happened when expressions in CASE-function were not of the same character set. A CASE-function should return values of the same character set for all branches. Internally, that means a new Item-instance for the CONVERT(... USING <some charset>)-function is added to the item tree when needed. The problem was that such changes were not properly recorded using THD::change_item_tree(), thus dangling pointers remain in the item tree after THD::rollback_item_tree_changes(), which lead to undefined behavior (i.e. crash / wrong data) for subsequent executions of the stored routine. This bug was introduced by a patch for Bug 11753363 (44793 - CHARACTER SETS: CASE CLAUSE, UCS2 OR UTF32, FAILURE). The fixed function is Item_func_case::fix_length_and_dec(). New CONVERT-items are added in agg_item_set_converter(), which calls THD::change_item_tree(). The problem was that an intermediate array was passed to agg_item_set_converter(). Thus, THD::change_item_tree() there was called on intermediate objects. Note: those intermediate objects are allocated on THD's memory root, so it's Ok to put them into "changed item lists". The fix is to track changes on the correct objects.
-
- 13 Jun, 2011 1 commit
-
-
Georgi Kodinov authored
COPYRIGHT NOTICE Fixed copyright headers of updated files.
-
- 10 Jun, 2011 1 commit
-
-
Tor Didriksen authored
sql/my_decimal.h: Implement proper swap() function.
-
- 08 Jun, 2011 1 commit
-
-
Georgi Kodinov authored
-
- 06 Jun, 2011 6 commits
-
-
Georgi Kodinov authored
-
Georgi Kodinov authored
-
Georgi Kodinov authored
-
Georgi Kodinov authored
options.
-
Georgi Kodinov authored
-
Georgi Kodinov authored
FAIL IN EMBEDDED SERVER FreeBSD 64 bit needs the FP_X_DNML to fpsetmask() to prevent exceptions from propagating into mysql (as a threaded application). However fpsetmask() itself is deprecated in favor of fedisableexcept(). 1. Fixed the #ifdef to check for FP_X_DNML instead of i386. 2. Added a configure.in check for fedisableexcept() and, if present, this function is called insted of the fpsetmask(). No need for new tests, as the existing tests cover this already. Removed the affected tests from the experimental list.
-
- 03 Jun, 2011 11 commits
-
-
Rafal Somla authored
Since the Windows authentication support has been added to libmysql, this library depends on the system Secur32 library. Consequently, clients which are linked against libmysql should be also linked with Secur32 (in addition to ws2_32). In MS VC++ it is possible to embed information about required libraries into object file using #pragma directive. This patch adds such directive when the Windows authentiaction support is compiled. This is similar to analogous #pragma for ws2_32 library in my_init.c
-
Vasil Dimov authored
InnoDB 1.1.7 was released with MySQL 5.5.13
-
Anitha Gopi authored
-
Anitha Gopi authored
-
Anitha Gopi authored
-
Sergey Vojtovich authored
-
Sergey Vojtovich authored
-
Sergey Vojtovich authored
-
Sergey Vojtovich authored
The types mysql_event_general/mysql_event_connection are being cast to the incompatible type mysql_event. The way mysql_event and the other types are designed are prone to strict aliasing violations and can break things depending on how compilers optimizes this code. This patch fixes audit interface, so it confirms to strict- aliasing rules. It introduces incompatible changes to audit interface: - mysql_event type has been removed; - event_class has been removed from mysql_event_generic and mysql_event_connection types; - st_mysql_audit::event_notify() second argument is event_class; - st_mysql_audit::event_notify() third argument is event of type (const void *). "Writing Audit Plugins" section of manual should be updated: http://dev.mysql.com/doc/refman/5.5/en/writing-audit-plugins.html include/mysql/plugin_audit.h: event_class has been moved out of mysql_event types. include/mysql/plugin_audit.h.pp: event_class has been moved out of mysql_event types. plugin/audit_null/audit_null.c: event_class has been moved out of mysql_event types. sql/sql_audit.cc: event_class has been moved out of mysql_event types.
-
Anitha Gopi authored
-
Anitha Gopi authored
-
- 02 Jun, 2011 1 commit
-
-
Vinay Fisrekar authored
Separating out sub-test.
-
- 01 Jun, 2011 6 commits
-
-
Bjorn Munch authored
Be more explicit about path to (potential) plugin tests dirs
-
Georgi Kodinov authored
The check for empty password in the user account was checking the wrong field. Fixed to check the proper password hash. Test case added. Fixed native_password and old_password plugins that suffered from the same problems. Unambuguated the auth_string ACL_USER member : previously it was used for both password and the authentication string (depending on the plugin). Now fixed to contain either the authentication string specified or empty string.
-
Jon Olav Hauglid authored
SECONDARY INDEX IN INNODB This is a follow-up patch. This patch moves part of the new test coverage to a test file that is only run on debug builds since it used debug- only features and therefore broke the test case on release builds.
-
Bjorn Munch authored
Sets INSTALL_PLUGINTESTDIR if any plugin/*/tests exist
-
Vinay Fisrekar authored
innodb_prefix_index_liftedlimit.test used for functional testing of increase in prefix index limit
-
Jon Olav Hauglid authored
SECONDARY INDEX IN INNODB The patches for Bug#11751388 and Bug#11784056 enabled concurrent reads while creating secondary indexes in InnoDB. However, they introduced a regression. This regression occured if ALTER TABLE failed after the index had been added, for example during the lock upgrade needed to update .FRM. If this happened, InnoDB and the server got out of sync with regards to which indexes actually existed. Therefore the patch for Bug#11815600 again disabled concurrent reads. This patch re-enables concurrent reads. The original regression is fixed by splitting the ADD INDEX operation into two parts. First the new index is created but not made active. This is done while concurrent reads are allowed. The second part of the operation makes the index active (or reverts the change). This is done after lock upgrade, which prevents the original regression. In order to implement this change, the patch changes the storage API for in-place index creation. handler::add_index() is split into two functions, handler_add_index() and handler::final_add_index(). The former for creating indexes without making them visible and the latter for commiting (i.e. making visible) new indexes or reverting the changes. Large parts of this patch were written by Marko Mäkelä. Test case added to innodb_mysql_lock.test.
-
- 31 May, 2011 2 commits
-
-
Jimmy Yang authored
With this change, the index prefix column length lifted from 767 bytes to 3072 bytes if "innodb_large_prefix" is set to "true". rb://603 approved by Marko
-
Marko Mäkelä authored
mtr_start(): Declare the mtr memory area uninitialized in Valgrind before initializing the fields. mtr_commit(): Declare everything uninitialized except mtr->start_lsn, mtr->end_lsn and mtr->state.
-
- 30 May, 2011 4 commits
-
-
Davi Arnaut authored
The test case problem stemmed from the fact that a debug sync signal is a global variable that persists until overwritten by a new signal. This means that if two different signals are raised in sequence, a thread waiting for the first signal might miss it if the second signal sets the global variable before the thread wakes up. The solution is to deliver a subsequent signal only after the waiting thread has received it. mysql-test/t/query_cache_debug.test: Wait for signal to be delivered.
-
Bjorn Munch authored
Added reading from plugin.defs files under plugins/*
-
Davi Arnaut authored
-
Davi Arnaut authored
The problem is that clients implementing the 4.0 version of the protocol (that is, mysql-4.0) do not null terminate a string at the end of the authentication packet. These clients denote the end of the string with the end of the packet. Although this goes against the documented (see MySQL Internals ClientServer Protocol wiki) description of the protocol, these old clients still need to be supported. The solution is to support the documented and actual behavior of the clients. If a client is using the pre-4.1 version of the protocol, the end of a string in the authentication packet can either be denoted with a null character or by the end of the packet. This restores backwards compatibility with old clients implementing either the documented or actual behavior. sql/password.c: The scrambled message, as provided by the user, might not be properly null terminated. If this is the case, uninitialized memory past the end of the buffer could theoretically be accessed. To ensure that this is never the case, copy the scrambled message over to a null terminated auxiliar buffer. sql/sql_connect.cc: Use different execution paths to read strings depending on the protocol being used. If version 4.0 of the protocol is used, end of string can be denoted with a NUL character or by the end of the packet. If there are not enough bytes left after the current position of the buffer to satisfy the current string, the string is considered to be empty. This is required because old clients do not send the password string field if the password is empty.
-
- 27 May, 2011 5 commits
-
-
Davi Arnaut authored
-
Bjorn Munch authored
Do this in the common plugin.cmake but only if running in PB2 (If done in manual builds it would create a bzr diff)
-
Dmitry Shulga authored
-
Davi Arnaut authored
The problem is that although AIX implements bzero, its prototype is not declared by default. Since AC_CHECK_FUNC(bzero) succeeds even though a prototype is not declared, this breaks compilation in C++ files where a prototype is required. The solution is to only use bzero if a prototype is also declared. configure.in: Check if bzero is declared. No need to specify the includes, unisted.h and strings.h are already part of AC_INCLUDES_DEFAULT.
-
Tatjana Azundris Nuernberg authored
-