- 16 Jul, 2010 5 commits
-
-
Marc Alff authored
Backport from mysql-next-mr (5.6) to mysql-trunk (5.5)
-
Marc Alff authored
Backport from mysql-next-mr (5.6) to mysql-trunk (5.5)
-
Marc Alff authored
Backport from mysql-next-mr (5.6) to mysql-trunk (5.5)
-
Marc Alff authored
Backporting the fix from myql-next-mr (5.6) to mysql-trunk (5.5)
-
Marc Alff authored
This fix is for cleanup, to resolve a remaining code review item. Backport from mysql-next-mr (5.6) to mysql-trunk (5.5).
-
- 15 Jul, 2010 7 commits
-
-
Marc Alff authored
Fixed minor merge issues with #includes
-
Davi Arnaut authored
Remove OS/2 specific code.
-
Davi Arnaut authored
Remove QNX specific code.
-
Davi Arnaut authored
Remove VMS specific code.
-
Davi Arnaut authored
Remove Zortech specific code.
-
Davi Arnaut authored
Remove MS-DOS specific code.
-
Davi Arnaut authored
Remove Netware specific code.
-
- 14 Jul, 2010 3 commits
- 13 Jul, 2010 2 commits
-
-
Davi Arnaut authored
-
Sven Sandberg authored
Symptom: When the sql function SLEEP() was executed in the slave SQL thread or from an event (as in CREATE EVENT, not binlog event), then the timeout was capped to 5 seconds. Background: This bug was introduced in the fix of BUG#10374, in the function interruptible_wait() in item_func.cc. The function interruptible_wait(), called from item_func_sleep::val_int(), splits the sleep into 5 seconds units. After each unit, it checks if thd->is_connected() is true: if not, it stops sleeping. The purpose is to not use system resources to sleep when a client disconnects. However, thd->is_connected() returns false for the slave SQL thread and for the event worker thread, because they don't connect to the server the same way as client threads do. Fix: Make thd->is_connected() return true for all system threads.
-
- 12 Jul, 2010 2 commits
-
-
Davi Arnaut authored
naming scheme for tests related to functions, rename analyse.test to func_analyse.test (test for the ANALYSE() procedure). Avoids confusion with the ANALYZE statement (tested in analyze.test).
-
Davi Arnaut authored
analyse.test to func_analyse.test. Avoids confusion with the ANALYZE statement.
-
- 09 Jul, 2010 6 commits
-
-
Marc Alff authored
This change is for performance optimization. Fixed the performance schema instrumentation interface as follows: - simplified mysql_unlock_mutex() - simplified mysql_unlock_rwlock() - simplified mysql_cond_signal() - simplified mysql_cond_broadcast() Changed the get_thread_XXX_locker apis to have one extra parameter, to provide memory to the instrumentation implementation. This API change allows to use memory provided by the caller, to avoid having to use thread local storage. Using this extra parameter will be done in a separate fix, this change is for the interface only. Adjusted all the code and unit tests accordingly.
-
Luis Soares authored
-
Luis Soares authored
Merged on behalf of Davi.
-
Davi Arnaut authored
Post-merge fix: remove reference to file that is now gone.
-
Alexander Barkov authored
Problem: Item_str_ascii_func::val_str() did not set charset of the returned value properly. mysql-test/include/ctype_numconv.inc mysql-test/r/ctype_binary.result mysql-test/r/ctype_cp1251.result mysql-test/r/ctype_latin1.result mysql-test/r/ctype_ucs.result - Adding tests sql/item_strfunc.cc - Adding initialization of charset
-
Davi Arnaut authored
Post-merge fix: cast argument and correct type in assignment.
-
- 08 Jul, 2010 10 commits
-
-
Luis Soares authored
The server was not cleaning up some dbug allocated memory before exiting. This is not a real problem, as this memory would be deallocated anyway. Nonetheless, we improve the mysqlbinlog exit procedure, wrt to memory book-keeping, when no parameter is given. To fix this, we deploy a call to my_end() before the thread exits.
-
Davi Arnaut authored
Essentially, the problem is that safemalloc is excruciatingly slow as it checks all allocated blocks for overrun at each memory management primitive, yielding a almost exponential slowdown for the memory management functions (malloc, realloc, free). The overrun check basically consists of verifying some bytes of a block for certain magic keys, which catches some simple forms of overrun. Another minor problem is violation of aliasing rules and that its own internal list of blocks is prone to corruption. Another issue with safemalloc is rather the maintenance cost as the tool has a significant impact on the server code. Given the magnitude of memory debuggers available nowadays, especially those that are provided with the platform malloc implementation, maintenance of a in-house and largely obsolete memory debugger becomes a burden that is not worth the effort due to its slowness and lack of support for detecting more common forms of heap corruption. Since there are third-party tools that can provide the same functionality at a lower or comparable performance cost, the solution is to simply remove safemalloc. Third-party tools can provide the same functionality at a lower or comparable performance cost. The removal of safemalloc also allows a simplification of the malloc wrappers, removing quite a bit of kludge: redefinition of my_malloc, my_free and the removal of the unused second argument of my_free. Since free() always check whether the supplied pointer is null, redudant checks are also removed. Also, this patch adds unit testing for my_malloc and moves my_realloc implementation into the same file as the other memory allocation primitives.
-
Luis Soares authored
-
Marc Alff authored
-
Olav Sandstaa authored
from mysql-next-mr-opt-backporting. Bug#54515: Crash in opt_range.cc::get_best_group_min_max on SELECT from VIEW with GROUP BY When handling the grouping items in get_best_group_min_max, the items need to be of type Item_field. In this bug, an ASSERT triggered because the item used for grouping was an Item_direct_view_ref (i.e., the group column is from a view). The fix is to get the real_item since Item_ref* pointing to Item_field is ok.
-
Guilhem Bichot authored
from next-mr-bugfixing: BUG#54682 "set sql_select_limit=0 does not work"; let SQL_SELECT_LIMIT=0 work like it does in 5.1.
-
Luis Soares authored
-
Luis Soares authored
-
Luis Soares authored
-
Luis Soares authored
-
- 07 Jul, 2010 3 commits
-
-
Luis Soares authored
-
Alexander Barkov authored
Problem: sha2() reported its result as BINARY Fix: - Inheriting Item_func_sha2 from Item_str_ascii_func - Setting max_length via fix_length_and_charset() instead of direct assignment. - Adding tests
-
Alexander Barkov authored
Problem: Item_copy did not set "fixed", which resulted in DBUG_ASSERT in some cases. Fix: adding initialization of the "fixed" member Adding tests: mysql-test/include/ctype_numconv.inc mysql-test/r/ctype_binary.result mysql-test/r/ctype_cp1251.result mysql-test/r/ctype_latin1.result mysql-test/r/ctype_ucs.result Adding initialization of the "fixed" member: sql/item.h
-
- 06 Jul, 2010 2 commits
-
-
Luis Soares authored
The server was not cleaning up dbug allocated memory before exiting. This is not a real problem, as this memory would be deallocated anyway. Nonetheless, we improve the mysqlbinlog exit procedure, wrt to memory book-keeping, when no parameter is given. To fix this, we deploy a call to my_thread_end() before the thread exits, which will also free pending dbug related allocated blocks.
-
Davi Arnaut authored
value and NO_ZERO_DATE The problem was that a older version of the error path for a failed admin statement relied upon a few error conditions being met in order to access a table handler, the first one being that the table object pointer was not NULL. Probably due to chance, in all cases a table object was closed but the reference wasn't reset, the other conditions didn't evaluate to true. With the addition of a new check on the error path, the handler started being dereferenced whenever it was not reset to NULL, causing problems for code paths which closed the table but didn't reset the reference. The solution is to reset the reference whenever a admin statement fails and the tables are closed.
-