Commit graph

174513 commits

Author SHA1 Message Date
Monty
4da2b83af7 Fixed compiler error and some warnings on windows 2016-08-23 15:03:31 +03:00
Nirbhay Choubey
2024cddaa4 MDEV-10518: Large wsrep_gtid_domain_id may break IST
wsrep_gtid_domain_id was incorrectly being parsed and stored
as a signed long number on the joiner node.
2016-08-22 21:27:20 -04:00
Nirbhay Choubey
3ac0721a3c MDEV-10507: MariaDB 10.1 + wsrep fails to start under systemd post-reboot
/var/run/mysqld must be created before wsrep recovery.
2016-08-22 19:06:32 -04:00
Nirbhay Choubey
294961cc4d MDEV-10538: MariaDB fails to start without galera_recovery in systemd mode
Update ExecStartPre scripts to not fail if 'galera_recovery'
script is not available.
2016-08-22 18:38:06 -04:00
Monty
a5051cd3b2 Minor cleanups
- Remove impossible test in test_quick_select
- Ensure that is_fatal_error is set if we run out of stack space
2016-08-22 10:19:07 +03:00
Monty
b51109693e MDEV-10630 rpl.rpl_mdev6020 fails in buildbot with timeout
The issue was that when running with valgrind the wait for master_pos_Wait()
was not long enough.

This patch also fixes two other failures that could affect rpl_mdev6020:
- check_if_conflicting_replication_locks() didn't properly check domains
- 'did_mark_start_commit' was after signals to other threads was sent which could
  get the variable read too early.
2016-08-22 10:16:00 +03:00
Nirbhay Choubey
f381ad5230 Update WSREP_PATCH_REVNO. 2016-08-21 20:13:51 -04:00
Nirbhay Choubey
3f481e52e4 Fixes for failing tests (post-merge). 2016-08-21 20:09:05 -04:00
Nirbhay Choubey
cced23cf23 MDEV-9423: cannot add new node to the cluser: Binlog..
.. file '/var/log/mysql/mariadb-bin.000001' not found in binlog
index, needed for recovery. Aborting.

In Galera cluster, while preparing for rsync/xtrabackup based
SST, the donor node takes an FTWRL followed by (REFRESH_ENGINE_LOG
in rsync based state transfer and) REFRESH_BINARY_LOG. The latter
rotates the binary log and logs Binlog_checkpoint_log_event
corresponding to the penultimate binary log file into the new file.
The checkpoint event for the current file is later logged
synchronously by binlog_background_thread.

Now, since in rsync/xtrabackup based snapshot state transfer methods,
only the last binary log file is transferred to the joiner node; the
file could get transferred even before the checkpoint event for the
same file gets written to it. As a result, the joiner node would fail
to start complaining about the missing binlog file needed for recovery.

In order to fix this, a mechanism has been put in place to make
REFRESH_BINARY_LOG operation wait for Binlog_checkpoint_log_event
to be logged for the current binary log file if the node is part of
a Galera cluster. As further safety, during rsync based state transfer
the donor node now acquires and owns LOCK_log for the duration of file
transfer during SST.
2016-08-21 16:20:09 -04:00
sjaakola
415823a41c Refs: MW-279
- fixes in innodb to skip wsrep processing (like kill victim) when running in native mysql mode
- similar fixes in mysql server side
- forcing tc_log_dummy in native mysql mode when no binlog used. wsrep hton messes up handler counter
  and used to lead in using tc_log_mmap instead. Bad news is that tc_log_mmap does not seem to work at all
2016-08-21 16:20:09 -04:00
Damien Ciabrini
fec296cc10 refs codership/mysql-wsrep#267
Fix Galera crash at startup when compiled with gcc 6
2016-08-21 16:20:08 -04:00
Philip Stoev
2e56c7f3cd Bump WSREP_PATCH_VERSION to 16 2016-08-21 16:20:08 -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
ea3ff73031 GCF-837 Fix crash when loading wrong provider version
mysqld would crash with "double free or corrruption message"
if wrong provider version was given.
2016-08-21 16:17:17 -04:00
Daniele Sciascia
bf19492e3b GCF-837 Check wsrep interface version before loading provider 2016-08-21 16:17:17 -04:00
Daniele Sciascia
dfa9012abb MW-285 MTR test case for broken foreign key constraints 2016-08-21 16:17:16 -04:00
Krunal Bauskar
c9ac48f845 - PXC#592: Tried closing fk-reference-table that was never opened.
Function "wsrep_row_upd_check_foreign_constraints" tried to mark
  fk-reference-table opened without ensuring it table is really opened.
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
a12fa57d35 Galera MTR Tests: Run galera_pc_weight on freshly started servers in order to prevent interaction with other tests 2016-08-21 16:17:15 -04:00
sjaakola
5996c7baad refs: MW-279
- At startup time global wsrep_on is set too late and some wsrep paths may be executed
  because of this. e.g. replication slave restart could happen before wsrep_on state is defined.
- This fix checks both global wsrep_on and wsrep_provider values to determine if wsrep
  processing should happen
- Fix affects all instances where WSREP_ON macro is used
2016-08-21 16:17:14 -04:00
Philip Stoev
0e83726edb Galera MTR Tests: force galera_3nodes.galera_pc_bootstrap.test to run on a fresh cluster in order to avoid interaction with galera_3nodes.galera_innobackupex_backup.test 2016-08-21 16:17:14 -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
Daniele Sciascia
92162e6d87 MW-175 Fix definitively lost memory in wsrep_get_params 2016-08-21 16:17:13 -04:00
Philip Stoev
137af55ca1 Galera MTR Tests: stability fixes 2016-08-21 16:17:12 -04:00
Philip Stoev
db837fde87 Galera MTR Tests: Adjust tests for xtrabackup 2.4.2 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
Teemu Ollakka
f49500a803 MW-44 Disable general log for applier threads 2016-08-21 16:17:10 -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
sjaakola
d246630d73 Refs MW-252
- changed the condition when to do implicit desync as part of FTWRL to
  cover only case when node is PC and synced. Donor node has alreaydy desycned
  and other states mean that node is not in cluster, so desync is not even possible.
2016-08-21 16:17:05 -04:00
Philip Stoev
f3444c4a43 Bump WSREP_PATCH_VERSION to 14 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
a03c45fa98 Refs: MW-252
- if wsrep_on==OFF, unlock tables would resume provider even though it was not passed
  in FTWRL processing. This is fixed in this patch.
2016-08-21 16:17:02 -04:00
sjaakola
8ec50ebda3 Refs MW-252
- reverted from tracking donor servicing thread. With xtrabackup SST,
  xtrabackup thread will call FTWRL and node is desynced upfront
- Skipping desync in FTWRL if node is operating as donor
2016-08-21 16:17:02 -04:00