Commit graph

212 commits

Author SHA1 Message Date
Nirbhay Choubey
90266e8a0e Merge branch '10.0-galera' into bb-10.1-serg 2016-08-25 15:39:39 -04:00
Nirbhay Choubey
8b09db8bfb Fixes/improvements in galera test suite 2016-08-24 17:13:20 -04:00
Nirbhay Choubey
1b7c5dedf7 MDEV-10566: Create role statement replicated inconsistently in Galera Cluster
In galera cluster, the definer (and thus binlog invoker) must be set
for CREATE ROLE before Query_log_event is created during TOI on the
originating node.
2016-08-24 15:32:48 -04:00
Nirbhay Choubey
3f481e52e4 Fixes for failing tests (post-merge). 2016-08-21 20:09:05 -04:00
Philip Stoev
f01a16b541 Galera MTR Tests: fortify galera_bf_abort_flush_for_export against sporadic failures. 2016-08-21 16:20:07 -04:00
Philip Stoev
30c6ac3cd1 Galera MTR Tests: Attempt to fortify galera_kill_ddl.test against sporadic failures 2016-08-21 16:20:07 -04:00
Philip Stoev
0656453135 Galera MTR Tests: increase timeouts and adjust some sporadically-failing tests so that the Galera suites can be run with --parallel=4 2016-08-21 16:17:18 -04:00
Philip Stoev
85b9718b22 Galera MTR Tests: Test case for galera#414 - crash on shutdown with gcs.max_packet_size=2 2016-08-21 16:17:18 -04:00
Daniele Sciascia
dfa9012abb MW-285 MTR test case for broken foreign key constraints 2016-08-21 16:17:16 -04:00
Daniele Sciascia
88a1592b0a MW-286 Avoid spurious deadlock errors when wsrep_on is disabled
If a conflict happens under wsrep_on, the THD's wsrep_conflict_state
is typically set to MUST_ABORT and cleared later, when transaction is
aborted. However, when wsrep_on is disabled, no check is performed to
see whether wsrep_conflict_state is set. So this potentially creates
spurious deadlock errors on the subsequent statement that runs with
wsrep_on enabled.
To avoid this problem wsrep_thd_set_conflict_state() sets the conflict
state only if wsrep_on is enabled.
2016-08-21 16:17:15 -04:00
Philip Stoev
5609020c71 Galera MTR Tests: fortify galera_parallel_simple.test against sporadic failures 2016-08-21 16:17:14 -04:00
Philip Stoev
1cb01fe7d2 Galera MTR Tests: Fortify galera_restart_nochanges.test against sporadic failures due to node not being ready immediately after restart 2016-08-21 16:17:13 -04:00
Philip Stoev
137af55ca1 Galera MTR Tests: stability fixes 2016-08-21 16:17:12 -04:00
Nirbhay Choubey
81174c9ab1 Fix galera/MW-44 test post-merge. 2016-08-21 16:17:11 -04:00
Philip Stoev
182787f39e Galera MTR Tests: Adjust galera_log_output_csv.test to account for the fix for MW-44 2016-08-21 16:17:11 -04:00
Philip Stoev
675bcf3b6d Galera MTR Tests: A test for MW-44 - Disable general log for applier threads 2016-08-21 16:17:11 -04:00
Nirbhay Choubey
3f22e743c5 Fix galera/GAL-382 test post-merge. 2016-08-21 16:17:10 -04:00
Philip Stoev
9b42f09902 Galera MTR Tests: Add test for GAL-382, codership/galera#382 - InnoDB: Failing assertion: xid_seqno > trx_sys_cur_xid_seqno in trx0sys.cc line 356 2016-08-21 16:17:09 -04:00
Philip Stoev
fce9217c21 Galera MTR Test: Fix for MW-258.test - do not use SHOW PROCESSLIST 2016-08-21 16:17:09 -04:00
Philip Stoev
dda114461e Galera MTR Tests: Fixed tests to account for GAL-391 , GAL-374 2016-08-21 16:17:08 -04:00
Alexey Yurchenko
d45b58263d MW-259 - moved wsrep desync/resync calls from wsrep_desync_update() to wsrep_desync_check() method which does not hold the lock and is arguably a more fitting place to change provider state - before changing the actual variable value. 2016-08-21 16:17:08 -04:00
Nirbhay Choubey
4582a4bccf Fix galera_ist_recv_bind.test. 2016-08-21 16:17:07 -04:00
Alexey Yurchenko
90d92d2b49 MW-258 - RSU DDL should not rely on the global wsrep_desync variable value and should always try to desync on its own. 2016-08-21 16:17:07 -04:00
Philip Stoev
a00f4b29b5 Refs codership/galera#105 An MTR test for ist.recv_bind 2016-08-21 16:17:06 -04:00
Nirbhay Choubey
b758e9238a Fix galera_transaction_replay.test. 2016-08-21 16:17:06 -04:00
sjaakola
4e4ad17163 Refs MW-255
- popping PS reprepare observer before BF aborted PS replaying begins
  dangling observer will cause failure in open_table() ater on
- test case for this anomaly
2016-08-21 16:17:05 -04:00
Nirbhay Choubey
8b998a48cc Update galera version-dependent tests. 2016-08-21 16:17:04 -04:00
Nirbhay Choubey
65cf1d354a Refs: MW-252 Test fix post-merge 2016-08-21 16:17:04 -04:00
Philip Stoev
fe6ebb657e Refs: MW-252 MTR tests for FTWRL and desync 2016-08-21 16:17:03 -04:00
sjaakola
ae0fec9c36 refs: MW-248
- removed the off topic mtr test
2016-08-21 16:17:00 -04:00
sjaakola
5edf55be63 Refs: MW-248
- fixed the test case and extended with autoinc modification is master side
2016-08-21 16:16:59 -04:00
sjaakola
df96eb5d04 Refs: MW-248
- test cases from PXC for reproducing the issue
- initial fix
2016-08-21 16:16:59 -04:00
Nirbhay Choubey
963673e7af MW-292: Fix test case 2016-07-25 21:52:02 -04:00
Philip Stoev
e57287866f Galera MTR Tests: Test case for MW-292 : NOW() returns stale timestamp after transaction replay 2016-07-25 21:38:09 -04:00
Daniele Sciascia
74f80b3499 MW-267 Enforce wsrep_max_ws_size limit in wsrep provider
This changes variable wsrep_max_ws_size so that its value
is linked to the value of provider option repl.max_ws_size.
That is, changing the value of variable wsrep_max_ws_size
will change the value of provider option repl.max_ws_size,
and viceversa.
The writeset size limit is always enforced in the provider,
regardless of which option is used.
2016-07-25 11:44:57 -04:00
Daniele Sciascia
5197fcf6b4 MW-269 Fix outstanding issues with wsrep_max_ws_rows
This patch includes two fixes:

1) Rollback when wsrep_max_ws_rows is exceeded would not switch
back to previous autocommit mode; and 2) Internal rows counter
would not be reset on implicit commits.
2016-07-25 11:24:23 -04:00
Daniele Sciascia
3db92ee433 MW-265 Add support for wsrep_max_ws_rows
Variable wsrep_max_ws_rows limits the number of rows that a transaction
can insert/update/delete.
2016-07-19 21:06:42 -04:00
Sergei Golubchik
62e0a4552f Merge branch '10.0-galera' into 10.1 2016-06-28 22:06:22 +02:00
Nirbhay Choubey
7ff44b1a83 MDEV-10161: wsrep_sync_wait not enabled when set to 1 in config file
Since wsrep_sync_wait & wsrep_causal_reads variables are related,
they are always kept in sync whenever one of them changes.
Same is tried on server start, where wsrep_sync_wait get updated
based on wsrep_causal_reads' value. But, since wsrep_causal_reads
is OFF by default, wsrep_sync_wait's value gets modified and loses
its WSREP_SYNC_WAIT_BEFORE_READ bit.

Fixed by syncing wsrep_sync_wait & wsrep_causal_reads values
individually on server start in mysqld_get_one_option() based
on command line arguments used.
2016-06-27 18:30:07 -04:00
Nirbhay Choubey
90f222ea7d MDEV-10235: Deadlock in CREATE TABLE .. AS SELECT .. if result set is empty in Galera
In CTAS, handlers get registered under statement transaction
(st_transactions::stmt), while ha_fake_trx_id(), used by CTAS,
looked under standard transaction (st_transactions::all) for
registered handlers, and thus it failed to grab a fake transaction
ID. As a result, with no valid transaction ID, wsrep commit failed
with an error.

ha_fake_trx_id() now looks for handlers registered under 'stmt'
in case 'all' is empty. Also modified the logic to print warning
only once if none of the registered handlers have fake_trx_id.
2016-06-27 18:21:00 -04:00
Nirbhay Choubey
f629f53548 Fix memory leak in XtraDB. 2016-06-27 14:44:07 -04:00
Nirbhay Choubey
94a61838fe Fix galera,wsrep tests. 2016-06-26 21:15:36 -04:00
Nirbhay Choubey
868c2ceb01 MDEV-9083: Slave IO thread does not handle autoreconnect to restarting Galera Cluster node
Chery-picked commits from codership/mysql-wsrep.

MW-284: Slave I/O retry on ER_COM_UNKNOWN_ERROR

Slave would treat ER_COM_UNKNOWN_ERROR as fatal error and stop.
The fix here is to treat it as a network error and rely on the
built-in mechanism to retry.

MW-284: Add an MTR test
2016-06-12 19:28:56 -04:00
Nirbhay Choubey
9a5c75a073 MDEV-9853: WSREP says it cannot get fake InnoDB transaction ID followed by segmentation fault
Ha_trx_info should not be reset in ha_fake_trx_id() as it is
later used during commit.
2016-05-05 09:19:39 -04:00
Monty
d5822a3ad0 Fixed some galera tests 2016-04-28 16:30:34 +03:00
Nirbhay Choubey
37f915c191 Merge branch '10.0-galera' into 10.1 2016-03-22 01:35:56 -04:00
Nirbhay Choubey
d31d6d31bb MDEV-9696: CREATE SERVER statement does not replicate in Galera Cluster
Enable replication of CREATE/ALTER/DROP SERVER statements
in Galera cluster.
2016-03-22 00:38:21 -04:00
Nirbhay Choubey
000f76d886 Fix galera_sync_wait_show test. 2016-03-22 00:38:20 -04:00
Nirbhay Choubey
7c42b47e67 Merge branch '5.5-galera' into 10.0-galera 2016-03-22 00:35:14 -04:00
Nirbhay Choubey
9c89b84d46 MDEV-9401: wsrep_forced_binlog_format with binlog causes crash
Some statements are always replicated in STATEMENT binlog format.
So upon their execution, the current binlog format is temporarily
switched to STATEMENT even though the session's format is different.
This state, stored in THD's current_stmt_binlog_format, was getting
incorrectly masked by wsrep_forced_binlog_format, causing assertions
and unintended generation of row events.

Backported galera.galera_forced_binlog_format and added a test
specific to this case.
2016-03-18 11:27:32 -04:00