Commit Graph

95 Commits

Author SHA1 Message Date
29dd16b333 Merge branch '2.3' into 2.4 2019-09-05 16:28:25 +03:00
d82a90e27f Add read rights to /etc/my.cnf.d/* on test VMs
In some configs /etc/my.cnf.d/* files access rights are
very limited and server can not read configuration.
It leads to broken settings and unability to setup
replication during the test
2019-09-05 10:21:04 +03:00
a67bfd4cb9 Fix backend SSL tests
Due to incorrect SSL certs copying to backend and wrong setting in
maxscale.cnf it was not possible to active backend SSL.
Additionally, one more maxscale restart added to 'sql_queries' test
to reproduce SSL bug in 2.4.1.
Also ssl.cnf tuned in order to reproduce SSL bug
2019-08-29 17:42:39 +03:00
855b8d876a MXS-2644 Move ci setup from constructor to setup() function
By moving the setting up of the test environment from the constructor
to a separate setup()-function, it is possible to introduce virtual
functions and make it easier to do things differently depending on
whether the backend is MariaDB, Galera och Clustrix.
2019-08-22 11:16:11 +03:00
e2124ec01f MXS-2644 Log reason if mysql_real_connect fails
If mysql_real_connect fails inside any of the open_conn_db...
utility functions that will now be logged.
2019-08-22 11:16:11 +03:00
fcc19f3c66 Merge branch '2.3' into 2.4 2019-06-27 08:53:33 +03:00
6cc0d43cb2 Merge branch '2.2' into 2.3 2019-06-26 10:10:26 +03:00
42bf95eb82 Fix MariaDB startup commands
Newer systems only define the mariadb service.
2019-06-25 10:15:06 +03:00
799e9d67e6 Merge branch '2.3' into develop 2019-06-06 16:05:30 +03:00
16005c452e run create_user* under sudo 2019-06-05 13:42:39 +03:00
0d3a235851 MXS-2481 Allow [un]block-commands to be overriden
In the case of Clustrix, there are other ports to block as well.
2019-05-28 12:25:21 +03:00
64935573b2 Add virtual functions check_replication() and start_replication() for Clustrix
Implementations of check_replication() and start_replication() for Clustrix allows to use fix_replication()
also for Clustrix nodes without checking it.
Also several attempts to check nodes after restart are added - to wait for nodes if they are not running
right after server daemon restart
2019-05-22 15:39:25 +03:00
56c27afd0a MXS-2458: add template for Clustrix monitor tests
First implementation of Clustrix setup creation
TODO: move Clustrix installation to MDBCI
2019-05-07 17:17:57 +03:00
4ad60fa2a2 Merge branch '2.3' into develop 2019-04-24 13:29:04 +03:00
5e6107d451 MXS-2441: Add galera with slaves test case
The test checks that servers replicating from Galera nodes work as
expected.
2019-04-23 11:57:10 +03:00
ddf9002e86 Add tests with big backend
Basic tests can be executed with 15 machines Master/slave backend. Tests have label BIG_REPL_BACKEND Default template modified to support big backend. Tests temporaraly labeled as UNSTABLE to prevent their execution nightly
For big test maxscale.cnf is automatically generated for any number of nodes
2019-04-18 09:48:39 +03:00
eafb7ac5f1 Add tests with big backend
Basic tests can be executed with 15 machines Master/slave backend. Tests have label BIG_REPL_BACKEND Default template modified to support big backend. Tests temporaraly labeled as UNSTABLE to prevent their execution nightly
2019-04-15 14:35:24 +03:00
c643f9bc8d Merge branch '2.3' into develop 2019-04-12 13:23:49 +03:00
5e3af05d48 Speed up test startup
The VM connectivity and log truncation is now done in parallel.
2019-04-09 09:43:19 +03:00
2aa3515fc8 Merge commit '09cb4a885f88d30b5108d215dcdaa5163229a230' into develop 2019-04-04 14:34:17 +03:00
cd732ac14f MXS-2243 System tests brings VMs by themselves (#193)
maxscale-system-test changed in order to control test environment by itself.
Every test checks which machines are running, compare with list of needed machines
and start new VMs is they are missing in the running machines list.
Tests are executiong MDBCI commands, MDBCI executable should be in the PATH
2019-04-02 13:27:34 +03:00
fb96141dda MXS-2243_labels Maxscale system tests prepare environment by themselves
maxscale-system-test changed in order to control test environment by itself.
Every test checks which machines are running, compare with list of needed machines
and start new VMs is they are missing in the running machines list.
Tests are executiong MDBCI commands, MDBCI executable should be in the PATH
2019-03-28 22:37:24 +02:00
6ca89b4d27 MXS-2313: Add rank test case
The test checks that the behavior of readwritesplit is as it should
be. The test still needs to be extended to cover readconnroute.
2019-03-18 13:12:59 +02:00
1c3a5bda83 Merge branch '2.3' into develop 2019-03-11 12:29:56 +02:00
3081bfbb1e Merge branch '2.2' into 2.3 2019-03-11 10:49:06 +02:00
c132125d55 Fix log truncation
Syslog wasn't truncated which caused massive disk space usage when the
full test set was run.
2019-03-11 10:47:44 +02:00
83fc3b1bc2 Merge branch '2.3' into develop 2019-03-04 17:43:53 +02:00
a6ab05b673 Fix format-overflow warnings in tests
The tests previously ignored these warnings but the change in compiler
flags caused them to fail.
2019-03-04 08:48:32 +02:00
8d6932abb2 fix compiler warnings in tests 2019-02-27 23:57:13 +02:00
e5cdefa69d MXS-2300: Add history pruning test
The test checks that the session command history pruning works as
expected.
2019-01-31 14:23:27 +02:00
f5f6a12484 Start Galera correctly
The Galera documentation tells us to use the galera_new_cluster command to
start a new Galera cluster. This should prevent the problems of nodes
failing to join the cluster either on the initial startup or after a node
goes down.
2019-01-16 10:01:58 +02:00
aa2572c677 Pass database as a parameter in connect
When connecting to a node, a database can now be optionally given as a
parameter. This makes testing with different databases easier as the need
to use the explicit functions is removed.
2018-11-22 13:51:08 +02:00
d60e97dfa5 Make node startup more robust
The connection attempts to all nodes are done over a period of time to
cope with slowly starting servers.
2018-11-19 20:02:11 +02:00
29d96662eb Add missing error message to check_replication
The version extraction could fail silently.
2018-11-15 14:24:41 +02:00
3092a744ed Enable verbose output on Galera startup failure
If a Galera node fails to start, enabling the verbose mode prints the
output of each SSH command. This fixes the visibility of the log file
printing.
2018-11-14 16:23:47 +02:00
07231747bf Print server logs on failure to start
When the MariaDB server exits with an error, the logs help explain why
that happened.
2018-11-14 16:23:47 +02:00
2650a9174e Fix addition of galera config options
The options weren't properly set as the galera nodes used different file
names.
2018-11-14 13:08:27 +02:00
0355398425 Fix typo in unblock_node
The command is called ip6tables.
2018-11-13 16:48:03 +02:00
eb1bc0b768 Add more error logging to Galera checks
The reason for the failure is now logged.
2018-11-09 09:13:27 +02:00
f085abf720 Use one ssh connection for block/unblock operations
As the ssh_node_f function supports full shell syntax, all of the work can
be done with a single ssh connection. This removes the overhead that each
extra ssh connection adds.
2018-11-09 09:13:27 +02:00
4e3d1a29b6 Clean up Galera_nodes::check_galera
The code can be simplified as only one of the nodes needs to be checked to
see how many nodes are in the cluster.
2018-11-09 09:13:26 +02:00
69bf3a90d3 Fix and improve Galera startup
A certain templated parameter was only substituted when the VMs were
provisioned. This needs to be handled by the test framework to allow
changes into Galera clusters configuration.

Also made the startup of the "lesser" nodes parallel so minimize the
startup time.
2018-11-09 09:13:26 +02:00
2ac1656fc7 Fix galera initialization
The galera configurations need pre-processing before they can be
used. Switched to std::endl to automatically flush the output at the end
of each line. This makes it easier to see what is happening when the tests
are ran by buildbot. Also removed the extra startup of the servers that
was done right after installing the database.
2018-11-09 09:13:26 +02:00
ccec2a387a Fix replication in parallel
If the replication is broken between the nodes, it is now fixed in
parallel on all nodes instead of doing it one server at a time.

This reduces the time from about 120 seconds to 13 seconds. The time was
measured by running the check_backend test first with all backends broken
and then with the fixed backends subtracting time of the latter from the
former.
2018-11-09 09:13:25 +02:00
71ffef5708 Partially revert 4ba011266843857bbd3201e5b925a47e88e1808f
Add back leading operator enforcement.
2018-09-20 15:57:30 +03:00
d11c78ad80 Format all sources with Uncrustify
Formatted all sources and manually tuned some files to make the code look
neater.
2018-09-10 13:22:49 +03:00
c447e5cf15 Uncrustify maxscale
See script directory for method. The script to run in the top level
MaxScale directory is called maxscale-uncrustify.sh, which uses
another script, list-src, from the same directory (so you need to set
your PATH). The uncrustify version was 0.66.
2018-09-09 22:26:19 +03:00
a13e95951b Merge branch '2.2' into develop 2018-08-30 11:37:49 +03:00
4fd6d075cb doc and astyle fixes 2018-08-29 12:00:52 +03:00
b98c0841b4 Enable and fix -Wextra warnings
Fixed all warnings that were present with -Wextra.
2018-07-03 15:07:19 +03:00