mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
8e280f3007
Another batch of changes that should make the SST process more reliable in all scenarios: 1) Added hostname or CN verification when stunnel is used with certificate chain verification (verifyChain = yes); 2) Added check for the absence of the stunnel utility for mtr tests; 3) Deletion of working files before and after SST is done more accurately; 4) rsync on joiner can be run even if the path to its configuration file contains spaces; 5) More accurate directory creation (for data files and for logs); 6) IST with mysqldump no longer turns off statement logging; 7) Reset password for mysqldump when password is empty but username is specified; 8) More reliable quoting when generating statements in wsrep_sst_mysqldump; 9) Added explicit generation of 2048-bit Diffie-Hellman parameters for sockat < 1.7.3, by analogy with xtrabackup; 10) Compression parameters for qpress are read from all suitable server groups in configuration file, as well as from the [sst] and [xtrabackup] groups; 11) Added a test that checks compression using qpress; 12) Checking for optional utilities is modified to work even if they implemented as built-in shell commands (unlikely on real systems, but more reliable).
79 lines
4.2 KiB
Perl
79 lines
4.2 KiB
Perl
package My::Suite::GALERA_3NODES;
|
|
|
|
use lib 'suite';
|
|
use wsrep::common;
|
|
|
|
@ISA = qw(My::Suite);
|
|
|
|
return wsrep_not_ok() if wsrep_not_ok();
|
|
|
|
push @::global_suppressions,
|
|
(
|
|
qr(WSREP: wsrep_sst_receive_address is set to '127.0.0.1),
|
|
qr(WSREP: Could not open saved state file for reading: .*),
|
|
qr(WSREP: Could not open state file for reading: .*),
|
|
qr(WSREP: Gap in state sequence. Need state transfer.),
|
|
qr(WSREP: Failed to prepare for incremental state transfer:),
|
|
qr(WSREP:.*down context.*),
|
|
qr(WSREP: Failed to send state UUID:),
|
|
qr(WSREP: last inactive check more than .* skipping check),
|
|
qr(WSREP: Releasing seqno [0-9]* before [0-9]* was assigned.),
|
|
qr|WSREP: access file\(.*gvwstate.dat\) failed\(No such file or directory\)|,
|
|
qr(WSREP: Quorum: No node with complete state),
|
|
qr(WSREP: Initial position was provided by configuration or SST, avoiding override),
|
|
qr|WSREP: discarding established \(time wait\) .*|,
|
|
qr(WSREP: There are no nodes in the same segment that will ever be able to become donors, yet there is a suitable donor outside. Will use that one.),
|
|
qr(WSREP: evs::proto.*),
|
|
qr|WSREP: Ignoring possible split-brain \(allowed by configuration\) from view:.*|,
|
|
qr(WSREP: no nodes coming from prim view, prim not possible),
|
|
qr(WSREP: Member .* requested state transfer from .* but it is impossible to select State Transfer donor: Resource temporarily unavailable),
|
|
qr(WSREP: user message in state LEAVING),
|
|
qr(WSREP: .* sending install message failed: Transport endpoint is not connected),
|
|
qr(WSREP: .* sending install message failed: Resource temporarily unavailable),
|
|
qr(WSREP: Maximum writeset size exceeded by .*),
|
|
qr(WSREP: transaction size exceeded.*),
|
|
qr(WSREP: RBR event .*),
|
|
qr(WSREP: Ignoring error for TO isolated action: .*),
|
|
qr(WSREP: transaction size limit .*),
|
|
qr(WSREP: rbr write fail, .*),
|
|
qr(WSREP: .*Backend not supported: foo.*),
|
|
qr(WSREP: .*Failed to initialize backend using .*),
|
|
qr(WSREP: .*Failed to open channel 'my_wsrep_cluster' at .*),
|
|
qr(WSREP: gcs connect failed: Socket type not supported),
|
|
qr(WSREP: failed to open gcomm backend connection: 110: failed to reach primary view: 110 .*),
|
|
qr(WSREP: .*Failed to open backend connection: -110 .*),
|
|
qr(WSREP: .*Failed to open channel 'my_wsrep_cluster' at .*),
|
|
qr(WSREP: gcs connect failed: Connection timed out),
|
|
qr|WSREP: wsrep::connect\(.*\) failed: 7|,
|
|
qr(WSREP: SYNC message from member .* in non-primary configuration. Ignored.),
|
|
qr(WSREP: Could not find peer:),
|
|
qr(WSREP: TO isolation failed for: .*),
|
|
qr|WSREP: gcs_caused\(\) returned .*|,
|
|
qr|WSREP: Protocol violation. JOIN message sender .* is not in state transfer \(SYNCED\). Message ignored.|,
|
|
qr|WSREP: Protocol violation. JOIN message sender .* is not in state transfer \(JOINED\). Message ignored.|,
|
|
qr|WSREP: Unsupported protocol downgrade: incremental data collection disabled. Expect abort.|,
|
|
qr(WSREP: Action message in non-primary configuration from member [0-9]*),
|
|
qr(WSREP: Last Applied Action message in non-primary configuration from member [0-9]*),
|
|
qr(WSREP: discarding established .*),
|
|
qr|WSREP: .*core_handle_uuid_msg.*|,
|
|
qr(WSREP: --wsrep-causal-reads=ON takes precedence over --wsrep-sync-wait=0. WSREP_SYNC_WAIT_BEFORE_READ is on),
|
|
qr|WSREP: JOIN message from member .* in non-primary configuration. Ignored.|,
|
|
qr|Query apply failed:*|,
|
|
qr(WSREP: Ignoring error*),
|
|
qr(WSREP: Failed to remove page file .*),
|
|
qr(WSREP: wsrep_sst_method is set to 'mysqldump' yet mysqld bind_address is set to .*),
|
|
qr|WSREP: Sending JOIN failed: -107 \(Transport endpoint is not connected\). Will retry in new primary component.|,
|
|
qr|WSREP: Trying to continue unpaused monitor|,
|
|
qr|WSREP: Wait for gtid returned error 3 while waiting for prior transactions to commit before setting position|,
|
|
);
|
|
|
|
sub which($) { return `sh -c "command -v $_[0]"` }
|
|
|
|
sub skip_combinations {
|
|
my %skip = ();
|
|
$skip{'include/have_mariabackup.inc'} = 'Need ss'
|
|
unless which("lsof") || which("sockstat") || which("ss");
|
|
%skip;
|
|
}
|
|
|
|
bless { };
|