- 04 Mar, 2015 2 commits
-
-
Kristian Nielsen authored
MDEV-6403: Temporary tables lost at STOP SLAVE in GTID mode if master has not rotated binlog since restart The binlog contains specially marked format description events to mark when a master restart happened (which could have caused temporary tables to be silently dropped). Such events also cause slave to close temporary tables. However, there was a bug that if after this, slave re-connects to the master in GTID mode, the master can send an old format description event again. If temporary tables are closed when such event is seen for the second time, it might drop temporary tables created after that event, and cause replication failure. With this patch, the restart flag of the format description event is cleared by the master when it is sent to the slave in a subsequent connection, to avoid the errorneous temp table close.
-
Kristian Nielsen authored
MDEV-6589: Incorrect relay log start position when restarting SQL thread after error in parallel replication The problem occurs in parallel replication in GTID mode, when we are using multiple replication domains. In this case, if the SQL thread stops, the slave GTID position may refer to a different point in the relay log for each domain. The bug was that when the SQL thread was stopped and restarted (but the IO thread was kept running), the SQL thread would resume applying the relay log from the point of the most advanced replication domain, silently skipping all earlier events within other domains. This caused replication corruption. This patch solves the problem by storing, when the SQL thread stops with multiple parallel replication domains active, the current GTID position. Additionally, the current position in the relay logs is moved back to a point known to be earlier than the current position of any replication domain. Then when the SQL thread restarts from the earlier position, GTIDs encountered are compared against the stored GTID position. Any GTID that was already applied before the stop is skipped to avoid duplicate apply. This patch should have no effect if multi-domain GTID parallel replication is not used. Similarly, if both SQL and IO thread are stopped and restarted, the patch has no effect, as in this case the existing relay logs are removed and re-fetched from the master at the current global @@gtid_slave_pos.
-
- 25 Jan, 2015 1 commit
-
-
Sergey Petrunya authored
Merged revision 5224 from mysql-5.6 and added a test case. .. revno: 5224 committer: Sergey Glukhov <sergey.glukhov@oracle.com> branch nick: mysql-5.6 timestamp: Wed 2013-06-19 14:24:08 +0400 message: Bug#16620047 INCORRECT QUERY RESULT (AFTER SERVER UPGRADE)
-
- 23 Jan, 2015 4 commits
-
-
Sergei Golubchik authored
-
Kristian Nielsen authored
After fix of MDEV-6728, the KILL signal is reset at the start of query execution. This means that in this test case, we need to wait for the to-be-killed query to have started; otherwise the kill signal can be lost, causing the test case to fail.
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
- 22 Jan, 2015 2 commits
-
-
Kristian Nielsen authored
The test case deliberately crashes the server. If this crash happens in the middle of a page write, InnoDB crash recovery recovers the page from the doublewrite buffer, writing a message to the error log that is flagged as a test failure by mysql-test-run. So add a suppression for this.
-
Sergei Golubchik authored
-
- 21 Jan, 2015 6 commits
-
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
- 20 Jan, 2015 2 commits
-
-
Olivier Bertrand authored
on the multiple table result to obtain the same result on Windows and Linux (because files can be retrieved in a different order) modified: storage/connect/mysql-test/connect/r/json.result storage/connect/mysql-test/connect/t/json.test
-
Olivier Bertrand authored
added: storage/connect/json.cpp storage/connect/json.h storage/connect/mysql-test/connect/r/json.result storage/connect/mysql-test/connect/std_data/biblio.jsn storage/connect/mysql-test/connect/std_data/expense.jsn storage/connect/mysql-test/connect/std_data/mulexp3.jsn storage/connect/mysql-test/connect/std_data/mulexp4.jsn storage/connect/mysql-test/connect/std_data/mulexp5.jsn storage/connect/mysql-test/connect/t/json.test storage/connect/tabjson.cpp storage/connect/tabjson.h modified: storage/connect/CMakeLists.txt storage/connect/engmsg.h storage/connect/filamtxt.h storage/connect/ha_connect.cc storage/connect/msgid.h storage/connect/mycat.cc storage/connect/plgdbsem.h storage/connect/tabdos.cpp storage/connect/value.cpp storage/connect/value.h
-
- 19 Jan, 2015 19 commits
-
-
Olivier Bertrand authored
added: storage/connect/json.cpp storage/connect/json.h storage/connect/mysql-test/connect/r/json.result storage/connect/mysql-test/connect/std_data/biblio.jsn storage/connect/mysql-test/connect/std_data/expense.jsn storage/connect/mysql-test/connect/std_data/mulexp3.jsn storage/connect/mysql-test/connect/std_data/mulexp4.jsn storage/connect/mysql-test/connect/std_data/mulexp5.jsn storage/connect/mysql-test/connect/t/json.test storage/connect/tabjson.cpp storage/connect/tabjson.h modified: storage/connect/CMakeLists.txt storage/connect/engmsg.h storage/connect/filamtxt.h storage/connect/ha_connect.cc storage/connect/msgid.h storage/connect/mycat.cc storage/connect/plgdbsem.h storage/connect/tabdos.cpp storage/connect/value.cpp storage/connect/value.h
-
Sergei Golubchik authored
-
Sergei Golubchik authored
MDEV-6220 mysqldump will not backup database with --flush-logs parameter and log_error my.cnf parameter defined some checks were "if [ -n "$err_log" ]", others were "if [ $want_syslog -eq 0 ]", so when both are set, error log file was only partially initialized. To avoid this ambiguity we reset want_syslog when error log file is used.
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
correct the check for PLUGIN_VAR_STR
-
Sergei Golubchik authored
mtr internally does the following: 1. $default_vardir=.... 2. $opt_vardir=$default_vardir unless $opt_vardir; 3. $opt_vardir=realpath $opt_vardir unless IS_WINDOWS 4. if ($opt_vardir eq $default_vardir) { .... use /dev/shm ... } thus we have to realpath $default_datadir too, otherwise the comparison logic might be broken
-
Sergei Golubchik authored
-
Sergei Golubchik authored
Using a boolean flag for 'there is a RESET MASTER in progress' doesn't work very well for multiple concurrent RESET MASTER statements. Changed to a counter.
-
Sergei Golubchik authored
MDEV-7299 Assertion `m_status == DA_ERROR || m_status == DA_OK' fails on concurrent execution of DDL, queries from I_S, and KILL QUERY Fix MDL to report an error when a wait was killed, but preserve the old documented behavior of GET_LOCK() where killing it is not an error. Also remove race conditions in main.create_or_replace test
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
revert the code in filesort that conditionally updated 'found_rows', rely on filesort_limit_arg instead.
-
Sergei Golubchik authored
MDEV-7186 get_lock() crashes on Windows, main.sp_notembedded and main.trigger_notembedded fail in buildbot user locks are not affected by lowed_case_table_names
-
Sergei Golubchik authored
change the test not to use absolute values of Key_blocks_unused.
-
Sergei Golubchik authored
reset KILL_QUERY when a new query execution is just about to be started
-
Sergei Golubchik authored
copy the workaround from 5.5
-
Sergei Golubchik authored
-
Jan Lindström authored
This patch ports the work that facebook has performed to make innochecksum handle compressed tables. the basic idea is to use actual innodb-code to perform checksum verification rather than duplicating in innochecksum.cc. to make this work, innodb code has been annotated with lots of #ifndef UNIV_INNOCHECKSUM so that it can be compiled outside of storage/innobase. A new testcase is also added that verifies that innochecksum works on compressed/non-compressed tables. Merged from commit fabc79d2ea976c4ff5b79bfe913e6bc03ef69d42 from https://code.google.com/p/google-mysql/ The actual steps to produce this patch are: take innochecksum from 5.6.14 apply changes in innodb from facebook patches needed to make innochecksum compile apply changes in innochecksum from facebook patches add handcrafted testcase The referenced facebook patches used are: https://github.com/facebook/mysql-5.6/commit/91e25120e75272db4cdbc07d0e45877d9dea5715 https://github.com/facebook/mysql-5.6/commit/847fe76ea5239b09fa361b023c56e6be76d32046 https://github.com/facebook/mysql-5.6/commit/1135628a5a9b3412621b93233478f3804bcef51a https://github.com/facebook/mysql-5.6/commit/4dbf7c240ce2f08b7d6572d9452c9779ce90641c
-
- 18 Jan, 2015 4 commits
-
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Michael Widenius authored
mysql-test/suite/maria/insert_select.result: Added test case mysql-test/suite/maria/insert_select.test: Added test case mysys/thr_lock.c: Ensure we don't allow concurrent_insert when a read_no_write lock is in use
-