Commit graph

34018 commits

Author SHA1 Message Date
Michael Widenius
bd2117d154 Automatic merge from 5.5
Fixed 2 failing tests by replacing result files
2014-08-19 21:35:14 +03:00
Kristian Nielsen
cfa1ce81bb MDEV-6551: Some replication errors are ignored if slave_parallel_threads > 0
The problem occured when using parallel replication, and an error occured that
caused the SQL thread to stop when the IO thread had already reached a
following binlog file from the master (or otherwise performed a relay log
rotation).

In this case, the Rotate Event at the end of the relay log file could still be
executed, even though an earlier event in that relay log file had gotten an
error. This would cause the position to be incorrectly updated, so that upon
restart of the SQL thread, the event that had failed would be silently skipped
and ignored, causing replication corruption.

Fixed by checking before executing Rotate Event, whether an earlier event
has failed. If so, the Rotate Event is not executed, just dequeued, same as
for other normal events following a failing event.
2014-08-15 11:31:13 +02:00
Michael Widenius
65ac881c80 If one uses 3 --verbose options to mysql_upgrade or mysqlcheck one will now get on stdout all ALTER, RENAME and CHECK commands that mysqlcheck executes.
If one uses 4 --verbose to mysql_upgrade it will also write out all mysqlcheck commands invoked.


mysql-test/r/mysql_upgrade.result:
  Updated results from changing phases
mysql-test/r/mysql_upgrade_no_innodb.result:
  dated results from changing phases
mysql-test/r/mysql_upgrade_ssl.result:
  dated results from changing phases
2014-08-14 15:38:08 +03:00
Kristian Nielsen
f2cbca793c Change a couple of permissions that cause lintian warnings in .deb packaging and don't really hurt to fix. 2014-08-13 15:46:39 +02:00
Kristian Nielsen
ec05fea0a0 MDEV-6549, failing to update gtid_slave_pos for a transaction that was retried.
The bug was that in some cases, if a replicated transaction was rolled back
due to deadlock, during the subsequent retry of that transaction, the
gtid_slave_pos would _not_ be updated with the new GTID, leaving the GTID
position of the slave incorrect.

Fix this by ensuring during the retry that we clear the flag that marks that
the GTID has already been recorded in gtid_slave_pos, so that the update of
gtid_slave_pos will be done again during the retry.

In the original bug, the symptom was an assertion due to OPTION_GTID_BEGIN not
being cleared during the retry of the transaction. The reason was some code in
handling of a COMMIT query event, which would not clear the flag when not
recording a GTID in gtid_slave_pos. This commit also fixes that code to always
clear the OPTION_GTID_BEGIN flag for clarity, though it is actually not
possible for OPTION_GTID_BEGIN to become set unless a GTID is pending for
update (after fixing the bug described above).
2014-08-13 13:34:28 +02:00
Jan Lindström
9dc738bf5f MDEV-6546: innodb.innodb_simulate_comp_failures_small fails
sporadically

Fix: Modify test to be smaller so that testcase timeout does not
trigger. We already have a test for --big-test setup
(innodb.innodb_simulate_comp_failures).
2014-08-13 09:37:12 +03:00
Jan Lindström
354f3f1f9b MDEV-6546: innodb.innodb_simulate_comp_failures_small fails
sporadically

Fix: Modify test to be smaller so that testcase timeout does not
trigger. We already have a test for --big-test setup 
(innodb.innodb_simulate_comp_failures).
2014-08-13 09:10:56 +03:00
Alexander Barkov
02d92e3c92 Recoding feedback_plugin_send.result (forgotten in the previous commit). 2014-08-12 07:52:19 +04:00
Alexander Barkov
22a64047d1 MDEV-6274 Collation usage statistics
Adding collation usage statistics into the feedback plugin I_S table.
2014-08-11 05:45:45 +04:00
Sergei Golubchik
ffd9c77e08 merge 2014-08-08 01:16:32 +02:00
Sergei Golubchik
7a7e65b9fc Fix rpl.rpl_semi_sync_uninstall_plugin to work reliably 2014-08-07 18:08:50 +02:00
Sergei Golubchik
6fb17a0601 5.5.39 merge 2014-08-07 18:06:56 +02:00
Nirbhay Choubey
8035c986d4 MDEV-6490: Post-fix for the failing test. 2014-08-07 09:59:08 -04:00
Nirbhay Choubey
42b6c07ebd MDEV-6490: mysqldump unknown option --galera-sst-mode
A new command line option "galera-sst-mode" was introduced
in mysqldump as part of fix for MDEV-6316. But, since the
fix was pushed to maria-10.0-galera branch, the mysqldump
tool supplied with mariadb client deb/rpm packages, does not
have this new opion.
This fix contains the same patch along with a test case.
2014-08-06 19:42:03 -04:00
Sergei Golubchik
75f0f1708b MDEV-6543 Crash if enable 'federatedx' when 'federated' plugin already enabled, and vice-versa
INSTALL SONAME ignores attempts to load the same plugin twice, it's not an error
(because one can load one plugin by name and then install soname for the rest).
But Federated and FederatedX are different plugins, despite having the same name.

Now plugin_add() only considers two plugins identical if their names are the same
string (compared as pointers). Otherwise it reports an error.,
2014-08-06 14:02:05 +02:00
Sergei Golubchik
071a14c93d cleanup: remove have_mysql_upgrade.inc 2014-08-06 13:31:55 +02:00
Sergei Golubchik
15a9103c48 MDEV-6535 Ordering of mysql_upgrade tasks is not optimal
first update system tables, then the rest
2014-08-06 13:27:44 +02:00
Sergei Golubchik
16e43dfc03 main.ipv4_and_ipv6 - fails on sid
remove ipv4-mapped-ipv6 test, this feature is not always available
2014-08-06 11:47:26 +02:00
Sergei Golubchik
76293813fa fix main.key_cache failures on x86 2014-08-06 10:26:25 +02:00
Sergey Vojtovich
9f252fceab MDEV-6469 - rpl.rpl_gtid_basic, rpl.rpl_gtid_stop_start,
rpl.rpl_gtid_crash fail on PPC64

This is an addition to the original patch.

Restored show binlog events output and adjusted filters to
replace [\d-\d-\d,\d-\d-\d,\d-\d-\d] with [#-#-#].
2014-08-06 13:07:16 +04:00
Sergei Golubchik
cf4814b397 MDEV-6052 Inconsistent results with bit type
Remove the "don't update the row for b'' and store uninitialized bytes on disk" change.
Update test cases to allow DEFAULT b'', because b'' is a valid expression elsewhere.
2014-08-05 11:47:58 +02:00
Sergei Golubchik
321f589c81 MDEV-6181 EITS could eat all tmpdir space and hang
Don't ignore errors from Count_distinct_field::add(),
pass them to the caller, so that it could abort the data
collection loop.
2014-08-04 21:36:02 +02:00
Sergei Golubchik
fece177fe2 mysqltest: support pairs of delimiters in replace_regex 2014-08-04 21:19:24 +02:00
Sergei Golubchik
ef2bf18706 MDEV-4379 expand MariaDB dual-stack support
when binding to wildcard addresses (no --bind is specified or --bind=*),
bind to both ipv6 and ipv4 as mysql-5.6 is doing.
2014-08-03 21:43:59 +02:00
Sergei Golubchik
50e192a04f Bug#17638477 UNINSTALL AND INSTALL SEMI-SYNC PLUGIN CAUSES SLAVES TO BREAK
Fix the bug properly (plugin cannot be unloaded as long as it's locked).
Enable and fix the test case.
Significantly reduce number of LOCK_plugin locks for semisync
(practically all locks were removed)
2014-08-03 12:45:14 +02:00
Sergei Golubchik
1c6ad62a26 mysql-5.5.39 merge
~40% bugfixed(*) applied
~40$ bugfixed reverted (incorrect or we're not buggy)
~20% bugfixed applied, despite us being not buggy
(*) only changes in the server code, e.g. not cmakefiles
2014-08-02 21:26:16 +02:00
Sergei Golubchik
4b4de01fae 5.3 merge 2014-08-01 16:51:12 +02:00
Jan Lindström
d8a9bb4585 Add missing results file. 2014-08-01 14:33:49 +03:00
Sergei Golubchik
681fbcaf92 fix func_time.test to be independent from the system time zone 2014-08-01 12:04:55 +02:00
Sergei Golubchik
8867a499f7 MDEV-6050 MySQL Bug#13036505 62540: TABLE LOCKS WITHIN STORED FUNCTIONS ARE BACK IN 5.5 WITH MIXED AND ROW BI
cherry-pick revno 4053
committer: Gopal Shankar <gopal.shankar@oracle.com>
branch nick: sf_mysql-5.6
timestamp: Fri 2012-07-20 12:25:34 +0530
message:
  Bug#13036505 62540: TABLE LOCKS WITHIN STORED FUNCTIONS ARE BACK IN
                      5.5 WITH MIXED AND ROW BI.
2014-07-31 12:03:20 +02:00
unknown
a270e8abc4 MDEV-6441: memory leak
mysql_derived_prepare() was executed on the statement memory.
Now it is executed on the runtime memory.
All bugs induced by this were fixed.
2014-07-31 10:11:10 +03:00
Michael Widenius
1a3d33c5f7 Automatic merge 2014-07-30 22:05:47 +03:00
Michael Widenius
5364315229 Fix for MDEV-6493: Assertion `table->file->stats.records > 0 || error' failure, or 'Invalid write' valgrind warnings, or crash on scenario with Aria table, view, LOCK TABLES
This bug only happens in case of paritioned tables used in LOCK TABLES and implicit_commit() was called
(as part of trying to execute a CREATE TABLE withing lock tables)

The problem was that Aria could not move the tables from one transaction to the new one, as thd->open_tables contained
a partitioned tables and not an Aria table.

Fix:
- Store a list of all open tables that are part of a share in share->open_tables
- In maria::implict_commit() use transaction->used_tables & share->open_tables to find out which tables
  was part of the current transaction instead of using thd->open_tables, which may contain partitioned tables.


mysql-test/suite/maria/maria_partition.result:
  Added test case
mysql-test/suite/maria/maria_partition.test:
  Added test case
storage/maria/ha_maria.cc:
  Use trn->used tables and share->open_tables to find out which tables was part of the current transaction instead of using thd->open_tables.
storage/maria/ma_close.c:
  Remove closed table from share->open_list
storage/maria/ma_open.c:
  Add table to share->open_list
storage/maria/ma_state.c:
  Added comment
storage/maria/maria_def.h:
  Added share->open_list, a list of all tables that is using this share.
2014-07-30 13:27:52 +03:00
Sergei Golubchik
1c616869d1 fix the test to pass on windows (lower_case_file_system) 2014-07-29 12:56:43 +02:00
Sergei Golubchik
6ef139780d MDEV-6497 InnoDB deadlocks on UNINSTALL PLUGIN
Free the trx of the current thd (if any) in innobase_end()
2014-07-29 09:09:52 +02:00
Alexander Barkov
5b452ae027 MDEV-4511 Assertion `scale <= precision' fails on GROUP BY TIMEDIFF with incorrect types
MDEV-6302 Wrong result set when using GROUP BY FROM_UNIXTIME(...)+0
Fixed.
2014-07-28 13:47:55 +04:00
Elena Stepanova
0aa40c35ca MDEV-6378 mtr engines iuds time tests fail
- adjusted a test result according to the change made for MDEV-6100;
- added explicit timezone for engines/iuds, since MTR in
  MariaDB does not set it like MySQL's, and tests with constant TIMESTAMP
  can have different outcome
2014-07-28 13:31:46 +04:00
Alexander Barkov
c57c5be12a MDEV-5745 analyze MySQL fix for bug#12368495 2014-07-28 12:47:14 +04:00
Sergei Golubchik
01faff02fa disable the test for MDEV-6351 on embedded 2014-07-28 09:42:52 +02:00
Sergei Golubchik
a6071cc596 MDEV-6082 Assertion `0' fails in TC_LOG_DUMMY::log_and_order on DML after installing TokuDB at runtime on server with disabled InnoDB
We don't support changing tc_log implementation at run time.
If the first XA-capable engine is loaded with INSTALL PLUGIN - disable its
XA capabilities with a warning
2014-07-27 21:02:00 +02:00
Jan Lindström
a3acd72570 Merge InnoDB fixes from 5.5 revisions 4229, 4230, 4233, 4237 and 4238 i.e.
4229: MDEV-5670: Assertion failure in file buf0lru.c line 2355
      Add more status information if repeatable.

4230: MDEV-5673: Crash while parallel dropping multiple tables under heavy load
      Improve long semaphore wait output to include all semaphore waits
      and try to find out if there is a sequence of waiters.

4233: Fix compiler errors on product build.

4237: Fix too agressive long semaphore wait output and add guard against introducing
      compression failures on insert buffer.

4238: Fix test failure caused by simulated compression failure on
      IBUF_DUMMY table.
2014-07-25 10:30:16 +03:00
Sergei Golubchik
4e6e720160 MDEV-6290 Crash in KILL HARD QUERY USER x@y when slave threads are running
KILL USER should ignore system threads where sctx->user=sctx->host=NULL
2014-07-23 19:36:15 +02:00
Sergei Golubchik
1907bf042a MDEV-6409 CREATE VIEW replication problem if error occurs in mysql_register_view
fix by Sriram Patil
2014-07-23 12:01:05 +02:00
Jan Lindström
7bf45bec54 Fix too agressive long semaphore wait output and add guard against introducing
compression failures on insert buffer.
2014-07-24 14:35:09 +03:00
Sergey Petrunya
06655a192d MDEV-6322: The PARTITION engine can return wrong query results
MySQL Bug#71095: Wrong results with PARTITION BY LIST COLUMNS()
MySQL Bug#72803: Wrong "Impossible where" with LIST partitioning
MDEV-6240: Wrong "Impossible where" with LIST partitioning
- Backprot the fix from MySQL Bug#71095.
2014-07-23 22:48:31 +04:00
Sergey Petrunya
6b353dd1de MDEV-6289 : Unexpected results when querying information_schema
- When traversing JOIN_TABs with first_linear_tab/next_linear_tab(), don't forget
  to enter the semi-join nest when it is the first table in the join order.
  Failure to do so could cause e.g. I_S tables not to be filled.
2014-07-23 19:53:29 +04:00
Alexander Barkov
07cb53c58b Merge 5.3->5.5 2014-07-23 14:59:23 +04:00
Alexander Barkov
80708da138 MDEV-5750 Assertion `ltime->year == 0' fails on a query with EXTRACT DAY_MINUTE and TIME column
Item_func_min_max::get_date() did not clear ltime->year when returning a TIME value.
2014-07-23 13:38:48 +04:00
Alexey Botchkov
15a529e128 gis-precise.test fixed to work on Power8. 2014-07-22 15:28:15 +05:00
Sergey Vojtovich
2b61466733 MDEV-6469 - rpl.rpl_gtid_basic, rpl.rpl_gtid_stop_start,
rpl.rpl_gtid_crash fail on PPC64

GTID order in @@gtid_binlog_pos depends on internal hash order,
so requires to be hidden for stable test output.
2014-07-22 14:54:38 +04:00