- 08 Jan, 2014 1 commit
-
-
unknown authored
The problem was a race between the SQL driver thread and the worker threads. The SQL driver thread would set rli->last_master_timestamp to zero to mark that it has caught up with the master, while the worker threads would set it to the timestamp of the executed event. This can happen out-of-order in parallel replication, causing the "caught up" status to be overwritten and Seconds_Behind_Master to wrongly grow when the slave is idle. To fix, introduce a separate flag rli->sql_thread_caught_up to mark that the SQL driver thread is caught up. This avoids issues with worker threads overwriting the SQL driver thread status. In parallel replication, we then make SHOW SLAVE STATUS check in addition that all worker threads are idle before showing Seconds_Behind_Master as 0 due to slave idle.
-
- 05 Feb, 2014 2 commits
-
-
unknown authored
-
Elena Stepanova authored
appears to be unset, or when it contains 'root' even though the user does not have real root permissions
-
- 03 Feb, 2014 1 commit
-
-
Alexander Barkov authored
-
- 31 Jan, 2014 4 commits
-
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Elena Stepanova authored
-
Alexander Barkov authored
SET(CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON) to find header files from the bundled libraries (jemalloc, yassl, readline, pcre, etc) before the ones installed in the system.
-
- 28 Jan, 2014 9 commits
-
-
unknown authored
-
unknown authored
Set of JOIN_TYPE_OUTER made only once to avoid interference with optimization joins which made only once per query.
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Alexander Barkov authored
on server shutdown after SELECT with CONVERT_TZ It's wrong to return my_empty_string from val_str(). Removing my_empty_string. Using make_empty_result() instead.
-
Sergey Vojtovich authored
INSTALL PLUGIN There was mixed lock order between LOCK_plugin, LOCK_global_system_variables and LOCK_system_variables_hash. This patch ensures that write-lock on LOCK_system_variables_hash doesn't intersect with LOCK_plugin. Fixed by moving initialization/deinitialization of plugin options from plugin_add()/plugin_del() to plugin_initialize()/plugin_deinitalize(). So that plugin options are handled without protection of LOCK_plugin.
-
Alexander Barkov authored
-
- 27 Jan, 2014 5 commits
-
-
Sergei Golubchik authored
-
Sergei Golubchik authored
add patch as a "suggested" dependency to mariadb-test-5.5
-
Sergei Golubchik authored
if two threads were calling mi_assign_to_key_cache() for the same table, one could change share->key_cache while the other was having share->key_cache->op_lock locked. The other thread would crash then, trying to unlock share->key_cache->op_lock (because it would be a different mutex). fixed by caching the value of share->key_cache in a local variable. The thread can still call flush_key_blocks() for an unassigned keycache, but it's harmless.
-
Sergei Golubchik authored
-
Alexander Barkov authored
Assertion `mon > 0 && mon < 13' failed.'
-
- 26 Jan, 2014 9 commits
-
-
Sergei Golubchik authored
-
Sergei Golubchik authored
in some VMs readline thinks that the window size is zero. ignore it.
-
Sergei Golubchik authored
MDEV-5461 Assertion `length <= column->length' fails in write_block_record with functions in select list, GROUP BY, ORDER BY Old code in create_tmp_table(), that created an extra one-byte field (recinfo) before every NULL-able grouping field (Field) in the tmp table, did not actually work. Because the matching code in end_update(), that was supposed to update this byte, was using a wrong offset, updating the first byte of the Field, not a byte before it. Normally this wasn't an issue, because the Field value (written later in end_update) was overwriting this byte anyway. But in this bug the Field was Field_null, with zero length, so end_update() was overwriting the first byte of the following field. And the following field was not-nullable constant, which was stored only once in create_tmp_table and never updated later. Fixed by removing the code that didn't do any useful work anyway.
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Michael Widenius authored
Added variable "OLD_MODE" that can be used to turn off the new behavior mysql-test/r/insert.result: Added test case mysql-test/r/mysqld--help.result: Added old_mode mysql-test/suite/sys_vars/r/old_mode_basic.result: Added testing of new variable mysql-test/suite/sys_vars/t/old_mode_basic.test: Added testing of new variable mysql-test/t/insert.test: Added test case sql/sql_class.h: Added bit flags for OLD_MODE sql/sql_insert.cc: Disable duplicate key warnings for INSERT IGNORE of OLD_MODE NO_DUP_KEY_WARNINGS_WITH_IGNORE is used sql/sql_show.cc: Don't show progress reporting on SHOW PROCESSLIST if OLD_MODE NO_PROGRESS_INFO is used sql/sys_vars.cc: Added OLD_MODE
-
Michael Widenius authored
sql/item.h: Added cache for setup_natural_join_row_types sql/sql_base.cc: Cache old value of first_name_resolution_table for next call. (It's not safe to try to recalculate the value as the join structure may have been changed by the optimizer)
-
Michael Widenius authored
Added test cases mysql-test/r/mysql_tzinfo_to_sql_symlink.result: Updated results mysql-test/std_data/zoneinfo/garbage: test file mysql-test/std_data/zoneinfo/ignored.tab: test file mysql-test/t/mysql_tzinfo_to_sql_symlink.test: Added test cases for all options sql/tztime.cc: Better error messages. Fixed wrong place for 'continue'
-
Michael Widenius authored
Marked very long running tests as big_test
-
- 25 Jan, 2014 1 commit
-
-
Michael Widenius authored
Problem was that ALTER TABLE DISABLE KEYS incremented create_trid for the table, which made the new index entries invisible until the global trid catched up. Fixed by only updating create_trid if we are rewriting all rows and indexes. mysql-test/suite/maria/alter.result: Added test case mysql-test/suite/maria/alter.test: Added test case storage/maria/ha_maria.cc: Only updating create_trid if we are doing a full repair (and thus rewriting all rows and indexes). storage/maria/trnman.c: More DBUG_PRINT
-
- 27 Jan, 2014 2 commits
-
-
Alexander Barkov authored
-
Alexander Barkov authored
-
- 26 Jan, 2014 1 commit
-
-
unknown authored
-
- 24 Jan, 2014 5 commits
-
-
Sergey Petrunya authored
MDEV-5337: Wrong result in mariadb 5.5.32 with ORDER BY + LIMIT when index_condition_pushdown=on - in test_if_skip_sort_order(), correct the condition under which we have the code that restores the previously pushed index condition.
-
Sergey Petrunya authored
-
Sergey Petrunya authored
- in test_if_skip_sort_order(), correct the condition under which we have the code that restores the previously pushed index condition.
-
Michael Widenius authored
- Warnings about wrong symlink messages or non-timezone files with '.tab' are now only given if run with --verbose - Added long option handling - Added --help, --verbose and --version options sql/tztime.cc: Add usage of my_getopt, to get long options
-
Alexander Barkov authored
The crash happened because Item_func_monthname was derived from Item_func_month, so Item_func_monthname::is_null() did not work fine. Backporting a change from 5.5: Item_func_monthname is now derived from Item_str_func.
-