summaryrefslogtreecommitdiff
path: root/mysql-test/suite/galera/t/galera_defaults.test
blob: 995e0b4c4511e0b7ec969945c4612d85a5d2bde2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#
# The purpose of this test is to preserve the current state of the following:
# * SHOW VARIABLES LIKE 'wsrep%'
# * wsrep_provider_options
# * The names of the Galera status variables
#
# This way, if there is any change, inadvertent or not, the test will fail and the
# developer and QA will be alerted.
#

--source include/galera_cluster.inc
--source include/have_innodb.inc

# Make sure that the test is operating on the right version of galera library.
--disable_query_log
--let $galera_version=3.9
source ../wsrep/include/check_galera_version.inc;
--enable_query_log

# Global Variables

SELECT COUNT(*) = 39 FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME LIKE 'wsrep_%';

SELECT VARIABLE_NAME, VARIABLE_VALUE
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
WHERE VARIABLE_NAME LIKE 'wsrep_%'
AND VARIABLE_NAME NOT IN (
	'WSREP_PROVIDER_OPTIONS',
	'WSREP_SST_RECEIVE_ADDRESS',
	'WSREP_NODE_ADDRESS',
	'WSREP_NODE_NAME',
	'WSREP_PROVIDER',
	'WSREP_DATA_HOME_DIR',
	'WSREP_NODE_INCOMING_ADDRESS',
	'WSREP_START_POSITION'
)
ORDER BY VARIABLE_NAME;

# wsrep_provider_options
#
# We replace the ones that vary from run to run with placeholders

--let _WSREP_PROVIDER_OPTIONS = `SELECT @@wsrep_provider_options`
--perl
	use strict;
	my $wsrep_provider_options = $ENV{'_WSREP_PROVIDER_OPTIONS'};
	$wsrep_provider_options =~ s/base_dir = .*?;/<BASE_DIR>;/sgio;
	$wsrep_provider_options =~ s/base_host = .*?;/<BASE_HOST>;/sgio;
	$wsrep_provider_options =~ s/base_port = .*?;/<BASE_PORT>;/sgio;
	$wsrep_provider_options =~ s/gcache\.dir = .*?;/<GCACHE_DIR>;/sgio;
	$wsrep_provider_options =~ s/gcache\.name = .*?;/<GCACHE_NAME>;/sgio;
	$wsrep_provider_options =~ s/gmcast\.listen_addr = .*?;/<GMCAST_LISTEN_ADDR>;/sgio;
	$wsrep_provider_options =~ s/ist\.recv_addr = .*?;/<IST_RECV_ADDR>;/sgio;
	$wsrep_provider_options =~ s/evs\.evict = .*?;/<EVS_EVICT>;/sgio;
	$wsrep_provider_options =~ s/signal = .*?;\s*//sgio;
	$wsrep_provider_options =~ s/dbug = .*?;\s*//sgio;
	print $wsrep_provider_options."\n";
EOF

# Global Status

SELECT COUNT(*) FROM INFORMATION_SCHEMA.GLOBAL_STATUS
WHERE VARIABLE_NAME LIKE 'wsrep_%'
AND VARIABLE_NAME != 'wsrep_debug_sync_waiters';

SELECT VARIABLE_NAME FROM INFORMATION_SCHEMA.GLOBAL_STATUS
WHERE VARIABLE_NAME LIKE 'wsrep_%'
AND VARIABLE_NAME != 'wsrep_debug_sync_waiters'
ORDER BY VARIABLE_NAME;