- 22 Jun, 2016 7 commits
-
-
Vicențiu Ciorbaru authored
Fix the replication failure caused by incorect initialization of THD::invoker_host && THD::invoker_user. Breakdown of the failure is this: Query_log_event::host and Query_log_event::user can have their LEX_STRING's set to length 0, but the actual str member points to garbage. Code afterwards copies Query_log_event::host and user to THD::invoker_host and THD::invoker_user. Calling code for these members expects both members to be initialized. Eg. the str member be a NULL terminated string and length have appropriate size.
-
Igor Pashev authored
The bug is apparent when the username is longer than the rolename. It is caused by a simple typo that caused a memcmp call to compare a different number of bytes than necessary. The fix was proposed by Igor Pashev. I have reviewed it and it is the correct approach. Test case introduced by me, using the details provided in the MDEV. Signed-off-by: Vicențiu Ciorbaru <vicentiu@mariadb.org>
-
Sergei Golubchik authored
-
Sergei Golubchik authored
disable unstable tokudb tests, (old change that was lost in a merge)
-
Sergei Golubchik authored
1. remove unnecessary rpl-tokudb combination file. 2. fix rpl_ignore_table to cleanup properly (not leave test grants in memory) 3. check_temp_dir() is supposed to set the error in stmt_da - do it even when called multiple times, this fixes a crash when rpl.rpl_slave_load_tmpdir_not_exist is run twice.
-
Sergei Golubchik authored
fix constants to stay 64-bit instead of being truncated by VS. this fixes a hang on startup.
-
Sergei Golubchik authored
in particular, revert changes to the spider (avoid diverging from the upstream if possible)
-
- 21 Jun, 2016 19 commits
-
-
Sergey Vojtovich authored
Added missing target_thd initialization when processing local thread.
-
Alexander Barkov authored
The patch fixes the problem with loading information from system tables (e.g. event and help related tables) when PAD_CHAR_TO_FULL_LENGTH is enabled, as well as includes some additional minor improvements: - refactoring in get_field() to return an error rather than success if strmake_root() failed - removing of duplicate code in similar functions: char *get_field(MEM_ROOT *mem, Field *field) bool get_field(MEM_ROOT *mem, Field *field, String *res)
-
Vladislav Vaintroub authored
-
Oleksandr Byelkin authored
MDEV-5973: MySQL Bug#11757486:49539: NON-DESCRIPTIVE ERR (ERROR 0 FROM STORAGE ENGINE) WITH MULTI-TABLE UPDATE Condition in processing IGNORE clause for UPDATE & multi-table UPDATE made the same.
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergey Vojtovich authored
Fixed memory leak when mroonga fails to open index files. Memory leak was detected by valgrind when running mroonga/storage.repair_table_no_index_file.
-
Sergey Vojtovich authored
metadata_lock_info plugin called MDL_context::find_ticket() to obtain lock duration, which in turn iterates foreign thread private lists. These lists can be updated by owner thread without protection. Fixed by iterating threads (instead of MDL locks and tickets) and obtaining data through APC. Also fixed mdl_iterate_lock() to initialize iterator under prlock protection.
-
Sergey Vojtovich authored
"result" may be uninitialized when json_set_item() is called directly.
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Jan Lindström authored
Analysis: In storage/innobase/row/row0merge.cc InnoDB calls thd_progress_init, thd_progress_report and thd_progress_end functions. These seem to cause crash on solaris 10 64-bit. Fix: Disable progress reporting on UNIV_SOLARIS until the actual issue causing the crash is fixed. The actual bug is not on InnoDB code base.
-
- 20 Jun, 2016 7 commits
-
-
Jan Lindström authored
commit 4165961d Author: Sergei Golubchik <serg@mariadb.org> Fri Oct 16 02:07:06 2015 Committer: Sergei Golubchik <serg@mariadb.org> Mon Nov 16 08:55:55 2015 disable innodb on sol10-64 because buildbot config invokes BUILD/compile-solaris-amd64 with the --extra-args=--without-plugin-innodb argument, but BUILD/compile-solaris-amd64 doesn't take arguments and doesn't invoke configure.pl, so this extra-args is lost.
-
Sergei Golubchik authored
quote identifiers correctly
-
Sergei Golubchik authored
and MDEV-10250 InnoDB: Error: File (unknown): 'close' returned OS error 209. Cannot continue operation" after a failed connect() feedback plugin was continuing with the file descriptor, trying to send the data (which failed) and closing it at the end. Even though this fd might've been reused for something else already.
-
-
Sergey Vojtovich authored
shutdown) There was race condition between shutdown thread and event worker threads. Shutdown thread waits for thread_count to become 0 in close_connections(). It may happen so that event worker thread was started but didn't increment thread_count by this time. In this case shutdown thread may miss wait for this working thread and continue deinitialization. Worker thread in turn may continue execution and crash on deinitialized data. Fixed by incrementing thread_count before thread is actually created like it is done for connection threads. Also let event scheduler not to inc/dec running threads counter for symmetry with other "service" threads.
-
Alexander Barkov authored
The problem was that the loop in get_func_mm_tree() accessed improperly initialized instances of String, which resided in the bzero'ed part of the in_vector::base array. Strings in in_vector::base are originally initialized in Item_func_in::fix_length_and_dec(), in in_vector::in_vector() using sql_calloc, rather than using a String constructor, so their str_charset members are originally equal to NULL. Strings in in_vector::base are later initialized to good values in Item_func_in::fix_length_and_dec(), using array->set(), in this code: uint j=0; for (uint i=1 ; i < arg_count ; i++) { array->set(j,args[i]); if (!args[i]->null_value) // Skip NULL values j++; else have_null= 1; } if ((array->used_count= j)) array->sort(); NULLs are not taken into account, so at the end array->used_count can be smaller than array->count. This patch fixes the loop in opt_range.cc, in get_func_mm_tree(), to access only properly initialized elements in in_vector::base, preventing access to its bzero'ed non-initialized tail.
-
Jan Lindström authored
item when drop table indexes or drop table; Problem was that table and index statistics is removed from persistent tables but not from memory cache. Added functions to remove table and index statistics from memory cache.
-
- 18 Jun, 2016 1 commit
-
-
Alexey Botchkov authored
test failed on Windows so fixed by testing slightly differently.
-
- 17 Jun, 2016 2 commits
-
-
Daniel Bartholomew authored
-
Vicențiu Ciorbaru authored
Fix the assertion failure by setting the struct to 0. This can not be done using a macro due to different definitions of mutexes on various OS-es. Afterwards we call toku_mutex_init and completely initialize the locks.
-
- 16 Jun, 2016 4 commits
-
-
Vicențiu Ciorbaru authored
We need to return TRUE if got_error == 1, not error, which is initialized to FALSE.
-
Vicențiu Ciorbaru authored
When running mysql-test-run without a parallel parameter, it might be impossible to find a free port.
-
Vicențiu Ciorbaru authored
Change variable declaration to be before any other statements.
-
Alexander Barkov authored
The problem was earlier fixed by the patch for MDEV-9521. Adding tests only.
-