Commit graph

645 commits

Author SHA1 Message Date
Jan Lindström
69e1d65cce Update Galera failing test list. 2019-07-03 15:16:37 +03:00
Jan Lindström
c631bd7f10 Disable galera.MW-388. 2019-06-19 11:22:36 +03:00
Jan Lindström
371a8a6615 Galera test cleanup. 2019-06-13 13:18:54 +03:00
Jan Lindström
cd87e4e134 MDEV-13549: Timeout in wait_condition.inc for PROCESSLIST
Use wsrep sync wait instead of unnecessary waits and
correct slave setting.
2019-05-17 18:30:34 +03:00
Jan Lindström
bc511443b1 MDEV-17061: Test failure on galera.galera_gcs_fc_limit
Remove unnecessary sleeps and fix wait_condition to use
wsrep_flow_control_paused i.e. we wait until flow control
pauses a transaction on master.
2019-05-17 18:30:28 +03:00
Jan Lindström
9d3e2a7ca2 Merge 10.1 into 10.2 2019-05-08 20:05:30 +03:00
Jan Lindström
db9622f1f5 MDEV-19405: Galera test failure on galera_parallel_autoinc_largetrx
Test case was not stable. Fixed also galera_parallel_autoinc_manytrx
as it has the same problem.
2019-05-07 12:51:59 +03:00
Oleksandr Byelkin
8cbb14ef5d Merge branch '10.1' into 10.2 2019-05-04 17:04:55 +02:00
Vladislav Vaintroub
e8778f1c7c MDEV-19265 Server should throw warning if event is created and event_scheduler = OFF 2019-04-28 12:49:59 +02:00
Marko Mäkelä
d0116e10a5 Revert MDEV-18464 and MDEV-12009
This reverts commit 21b2fada7a
and commit 81d71ee6b2.

The MDEV-18464 change introduces a few data race issues. Contrary to
the documentation, the field trx_t::victim is not always being protected
by lock_sys_t::mutex and trx_t::mutex. Most importantly, it seems
that KILL QUERY could wrongly avoid acquiring both mutexes when
invoking lock_trx_handle_wait_low(), in case another thread had
already set trx->victim=true.

We also revert MDEV-12009, because it should depend on the MDEV-18464
fix being present.
2019-03-28 12:39:50 +02:00
Jan Lindström
81d71ee6b2 MDEV-12009: Allow to force kill user threads/query which are flagged as high priority by Galera
As noted on kill_one_thread SUPER should be able to kill even
system threads i.e. threads/query flagged as high priority or
wsrep applier thread. Normal user, should not able to kill
threads/query flagged as high priority (BF) or wsrep applier
thread.
2019-03-28 08:43:44 +02:00
Marko Mäkelä
e3618a333e Post-merge fix after 0508d327ae 2019-03-18 10:23:57 +02:00
Sergei Golubchik
0508d327ae Merge branch '10.1' into 10.2 2019-03-15 21:00:41 +01:00
Jan Lindström
d0ebb155fe MDEV-18577: Indexes problem on import dump SQL
Problem was that we skipped background persistent statistics calculation
on applier nodes if thread is marked as high priority (a.k.a BF).
However, on applier nodes all DDL which is replicate will be executed
as high priority i.e BF.

Fixed by allowing background persistent statistics calculation on
applier nodes even when thread is marked as BF. This could lead
BF lock waits but for queries on that node needs that statistics.
2019-03-13 10:18:12 +02:00
Jan Lindström
3b2a568589 Test cleanups. 2019-03-12 14:36:37 +02:00
Marko Mäkelä
3ea49d35bd Merge 10.1 into 10.2 2019-03-11 11:45:33 +02:00
Marko Mäkelä
0415021840 Clean up mysql-test/suite/galera/disabled.def again
Clean up after commit 0957d25781
which introduced some disorder (unsorted or duplicated test names).
2019-03-11 09:00:10 +02:00
Jan Lindström
b31d025c97 Decrease the time required to run test by removing unnecessary sleeps.
modified:   suite/galera/t/galera_autoinc_sst_mariabackup.test
2019-03-09 08:41:35 +02:00
Jan Lindström
0957d25781 MDEV-18830: Port SST fixes from 10.4 to 10.1
modified:   mysql-test/suite/galera/disabled.def
modified:   mysql-test/suite/galera/r/galera_many_rows.result
modified:   mysql-test/suite/galera/t/galera_kill_nochanges.test
new file:   mysql-test/suite/galera/t/galera_many_rows.cnf
modified:   mysql-test/suite/galera/t/galera_many_rows.test
modified:   mysql-test/suite/galera/t/galera_var_dirty_reads.test
modified:   scripts/wsrep_sst_mariabackup.sh
2019-03-09 08:41:35 +02:00
Marko Mäkelä
ab7e2b048d Merge 10.1 into 10.2 2019-03-08 20:45:45 +02:00
Marko Mäkelä
6567636b09 Disable regularly failing Galera tests
galera.partition and galera.galera_binlog_stmt_autoinc regularly display
mismatching values for AUTO_INCREMENT columns.

galera.MW-336 often times out while waiting for something in PROCESSLIST.

Also, sort the test names, remove the redundant "galera." prefix and
fix typos in 2 test names.
2019-03-08 16:39:29 +02:00
Marko Mäkelä
4fbf86454f Fix Galera results 2019-03-04 16:25:08 +02:00
Sergei Golubchik
8d47d9ed88 SSL test fixes
* fix CRL tests to work
* regenerate certificates to be at least 2048 bit
  (fixes buster and rhel8 in buildbot)
* update generate-ssl-cert.sh to generate crl files
* make all SSL tests to use certificates generated
  in generate-ssl-cert.sh, remove unused certificates

Backport from 10.4 9c60535f86
2019-03-01 12:41:05 -05:00
Jan Lindström
003b507416 Merge remote-tracking branch 'origin/10.1' into 10.2 2019-03-01 09:17:19 +02:00
Jan Lindström
622e9e8a7a MDEV-18265: Replace deprecated variable debug to debug_dbug on Galera tests
Replaced debug to debug_dbug on 10.1 on galera suite. Nothing to do
in wsrep and galera_3nodes suites.
2019-02-28 13:31:57 +02:00
Julius Goryavsky
2c734c980e MDEV-9519: Data corruption will happen on the Galera cluster size change
If we have a 2+ node cluster which is replicating from an async master
and the binlog_format is set to STATEMENT and multi-row inserts are executed
on a table with an auto_increment column such that values are automatically
generated by MySQL, then the server node generates wrong auto_increment
values, which are different from what was generated on the async master.

In the title of the MDEV-9519 it was proposed to ban start slave on a Galera
if master binlog_format = statement and wsrep_auto_increment_control = 1,
but the problem can be solved without such a restriction.

The causes and fixes:

1. We need to improve processing of changing the auto-increment values
after changing the cluster size.

2. If wsrep auto_increment_control switched on during operation of
the node, then we should immediately update the auto_increment_increment
and auto_increment_offset global variables, without waiting of the next
invocation of the wsrep_view_handler_cb() callback. In the current version
these variables retain its initial values if wsrep_auto_increment_control
is switched on during operation of the node, which leads to inconsistent
results on the different nodes in some scenarios.

3. If wsrep auto_increment_control switched off during operation of the node,
then we must return the original values of the auto_increment_increment and
auto_increment_offset global variables, as the user has set. To make this
possible, we need to add a "shadow copies" of these variables (which stores
the latest values set by the user).

https://jira.mariadb.org/browse/MDEV-9519
2019-02-26 07:45:11 +02:00
Julius Goryavsky
243f829c1c MDEV-9519: Data corruption will happen on the Galera cluster size change
If we have a 2+ node cluster which is replicating from an async master
and the binlog_format is set to STATEMENT and multi-row inserts are executed
on a table with an auto_increment column such that values are automatically
generated by MySQL, then the server node generates wrong auto_increment
values, which are different from what was generated on the async master.

In the title of the MDEV-9519 it was proposed to ban start slave on a Galera
if master binlog_format = statement and wsrep_auto_increment_control = 1,
but the problem can be solved without such a restriction.

The causes and fixes:

1. We need to improve processing of changing the auto-increment values
after changing the cluster size.

2. If wsrep auto_increment_control switched on during operation of
the node, then we should immediately update the auto_increment_increment
and auto_increment_offset global variables, without waiting of the next
invocation of the wsrep_view_handler_cb() callback. In the current version
these variables retain its initial values if wsrep_auto_increment_control
is switched on during operation of the node, which leads to inconsistent
results on the different nodes in some scenarios.

3. If wsrep auto_increment_control switched off during operation of the node,
then we must return the original values of the auto_increment_increment and
auto_increment_offset global variables, as the user has set. To make this
possible, we need to add a "shadow copies" of these variables (which stores
the latest values set by the user).

https://jira.mariadb.org/browse/MDEV-9519
2019-02-25 11:19:07 +02:00
Julius Goryavsky
5b82751111 MDEV-18426: Most of the mtr tests in the galera_3nodes suite fail
Most of the mtr tests in the galera_3nodes suite fail
for a variety of reasons with a variety of errors.

This patch fixes several substantial flaws
in the galera_3nodes suite tests and in the mtr framework
service files, adapting the tests from galera_3nodes
for the current version of MariaDB.

This patch also synchronizes some galera_3nodes-related
files with the latest changes made for MDEV-17835 (v2 patch)
and for MDEV-18379 in other branches (10.2 and 10.3).

Closes #1161
2019-02-12 09:38:13 +02:00
Julius Goryavsky
8f5ea83ff1 MDEV-18426: Most of the mtr tests in the galera_3nodes suite fail
Most of the mtr tests in the galera_3nodes suite fail
for a variety of reasons with a variety of errors.
Some tests simply need to add the missing "connection"
lines to the result files, but many of them fail due
to substantial errors that require reworking test files.

This patch adds the missing "connection" lines to
the result files and fixes several substantial flaws
in the galera_3nodes suite tests and in the mtr framework
service files, adapting the tests from galera_3nodes
for the current version of MariaDB.

https://jira.mariadb.org/browse/MDEV-18426
2019-02-06 14:54:31 +01:00
Marko Mäkelä
081fd8bfa2 Merge 10.1 into 10.2 2019-02-02 11:40:02 +02:00
Marko Mäkelä
a193c5720e MDEV-17206: Fix the .rdiff file that was broken in MDEV-17804
Only starting with MariaDB 10.2, the .result file will echo
"connect" and "connection" statements. There is no way how
the test could have passed on debug builds after
commit 1037edcb11
(which looks like an untested backport from a later version).
2019-02-01 11:05:29 +02:00
Oleksandr Byelkin
a3a4ea9355 postmerge rollbacks and fixes 2019-01-31 19:28:38 +01:00
Teemu Ollakka
4ef556955f MDEV-15740 Enabled and recorded galera_gcache_recover_manytrx 2019-01-27 16:07:18 +02:00
Marko Mäkelä
25161e6219 Merge 10.1 into 10.2 2019-01-24 14:43:29 +02:00
Sergei Golubchik
d24060b179 MDEV-17421: mtr does not restart the server whose parameters were changed
remove tests that rely on specific execution order
2019-01-23 17:20:41 +01:00
Jan Lindström
2d098933ee
Merge pull request #880 from tempesta-tech/sysprg/MDEV-17421
MDEV-17421: mtr does not restart the server whose parameters were changed
2019-01-23 18:03:51 +02:00
Marko Mäkelä
8e80fd6bfd Merge 10.1 into 10.2 2019-01-17 11:24:38 +02:00
mkaruza
69328c31ed MDEV-18176 Galera test failure on galera.galera_gtid_slave_sst_rsync
If galera.galera_gtid_slave_sst_rsync is repeated more than once it will fail due incorrect GTID position. After stopping SLAVE node reset also GTID_SLAVE_POS variable.
2019-01-15 13:29:11 +02:00
sjaakola
61b600079b MDEV-16690 node hang due to conflicting inserts in FK child table
Add the test case. The actual bug was fixed in MDEV-17541.

Closes #811
2019-01-15 09:52:51 +02:00
Marko Mäkelä
46046f2e59 After-merge fix: Disable a failing test 2019-01-14 13:46:19 +02:00
Marko Mäkelä
248dc12e60 Merge 10.1 into 10.2 2019-01-14 11:37:51 +02:00
Jan Lindström
1d56d875fe MDEV-15740: InnoDB does not flush redo log when it shoul
During database recovery, a transaction with wsrep XID is
recovered from InnoDB in prepared state. However, when the
transaction is looked up with trx_get_trx_by_xid() in
innobase_commit_by_xid(), trx->xid gets cleared in
trx_get_trx_by_xid_low() and commit time serialization history
write does not update the wsrep XID in trx sys header for
that recovered trx. As a result the transaction gets
committed during recovery but the wsrep position does not
get updated appropriately.

As a fix, we preserve trx->xid for Galera over transaction
commit in recovery phase.

Fix authored by: Teemu Ollakka (GaleraCluster) and Marko Mäkelä.

	modified:   mysql-test/suite/galera/disabled.def
	modified:   mysql-test/suite/galera/r/galera_gcache_recover_full_gcache.result
	modified:   mysql-test/suite/galera/r/galera_gcache_recover_manytrx.result
	modified:   mysql-test/suite/galera/t/galera_gcache_recover_full_gcache.test
	modified:   mysql-test/suite/galera/t/galera_gcache_recover_manytrx.test
	modified:   storage/innobase/trx/trx0trx.cc
	modified:   storage/xtradb/trx/trx0trx.cc
2019-01-07 12:12:30 +02:00
Jan Lindström
0c20b247de Disable galera.query_cache test. 2019-01-04 21:22:41 +02:00
Jan Lindström
b6b15de85d Disable failing Galera test galera_query_cache. 2019-01-04 20:23:13 +02:00
Marko Mäkelä
7d245083a4 Merge 10.1 into 10.2 2018-12-17 20:15:38 +02:00
Jan Lindström
517c59c540
Merge pull request #1026 from codership/10.1-galera-defaults
Remove provider defaults check from 'galera_defaults' MTR test
2018-12-17 07:45:14 +02:00
Jan Lindström
8a46b9fe3b MDEV-17771: Add Galera ist and sst tests using mariabackup
Add check that file key management plugin is found.
2018-12-17 05:53:18 +02:00
Alexey Botchkov
20011c8b14 MDEV-14576 Include full name of object in message about incorrect value for column.
galera_prepared_statement test fixed.
2018-12-16 18:43:51 +04:00
Alexey Yurchenko
6b81883170 Remove provider defaults check from 'galera_defaults' MTR test
From time to time Galera adds new parameters or changes defaults to
existing ones. Every time this happens galera_defaults test needs a
fix (and a commit) because it insists on checking these defaults.
This is making life hard because any Galera update may require a fix
to MariaDB code even though it is totally unrelated and defeats the
whole idea of a provider living its own life.
This commit removes checking for provider defaults to avoid false
positive failures on MariaDB side.
2018-12-14 21:29:17 +02:00
Marko Mäkelä
3e5162d814 Re-disable a failing test 2018-11-30 15:54:21 +02:00