Commit Graph

13991 Commits

Author SHA1 Message Date
e03a2e3cf0 Add MariaDB-Monitor multimaster failover/switchover test 2019-09-18 12:19:09 +03:00
78cc5b2445 Move packet_tracker.cc under maxscale
It depends on MaxScale-types. This also removes the maxsql-pcre2-dependency.
2019-09-18 12:19:09 +03:00
1f26189ddd Merge branch '2.3' into 2.4 2019-09-17 14:55:34 +03:00
dabab543cc MXS-2684 Add throttling callbacks to backend DCB from pool
Add throttling callbacks to a backend DCB taken from the persistent
pool. They were removed when the dcb was put into the pool.
2019-09-17 14:45:53 +03:00
7741fddb4b Merge branch '2.4' of github.com:mariadb-corporation/MaxScale into 2.4 2019-09-16 15:00:27 +03:00
ea95d9a523 Fix has_label() function name 2019-09-16 12:17:12 +03:00
5e2d9f599b Merge branch '2.3' into 2.4 2019-09-16 09:50:05 +03:00
60c33b149c MXS-2674 Prevent read of unitialized variable 2019-09-16 09:32:47 +03:00
01ab0c8736 MXS-2553 Allow parenthesis around SELECT
With this change, a parenthesized top-level SELECT, such as
"(SELECT f FROM t)" will be fully parsed. Before this change,
the statement was classified as invalid and would thus have
been sent to the master.

With this change also statements like

    (SELECT f FROM t1) UNION (SELECT f FROM t2)

will be correctly classified, although only partially parsed.
2019-09-13 15:45:16 +03:00
7531515259 MXS-2674 Fix query classification
With these changes

  SET @saved_cs_client= @@character_set_client;

will be classified as QUERY_TYPE_USERVAR_WRITE and

  SELECT 1 AS c1 FROM t1 ORDER BY ( SELECT 1 AS c2 FROM
    t1 GROUP BY GREATEST(LAST_INSERT_ID(), t1.a) ORDER BY
      GREATEST(LAST_INSERT_ID(), t1.a) LIMIT 1);

will be classified as QUERY_TYPE_READ|QUERY_TYPE_MASTER_READ
2019-09-13 15:43:57 +03:00
9969f21414 MXS-2674 Add test that reveals bug 2019-09-13 15:31:06 +03:00
31029eaec8 MXS-2675: Fix server creation with TLS via REST API
The TLS parameters were defined but the main parameter that enables it
wasn't automatically added. As the REST API documentation states that this
parameter does not need to be defined, the runtime configuration must add
it.
2019-09-13 14:14:34 +03:00
bdfd7341e7 Add tests with backend SSL
A 'BACKEND_SSL' label added. If test has this label
Testconnection() configures backend servers to
require SSL
2019-09-13 14:12:49 +03:00
811a2b1df6 Fix dead link 2019-09-13 13:52:35 +03:00
c079d1312e MXS-2674 Recognize timediff as builtin function 2019-09-12 12:38:57 +03:00
8b43adada7 MXS-2664: Remove all traces of Nagios plugin
Nagios plugin is not in Maxscale any more, but Nagios docs
and Nagios files processing in the 'postinst' script are
still present. Removing
2019-09-11 11:21:33 +03:00
9faed003e0 MXS-2669 Make '-l' work again
When a system test program is invoked with the flag '-l', it will
assume MaxScale is running on 127.0.0.1 using a configuration that
is compatible with the test.

NOTE: Currently any test that directly or indirectly sshes to the
      MaxScale node will fail. With a bit of setup that could also
      be made to work.
2019-09-10 15:34:56 +03:00
ebbd806c6a Merge branch '2.3' into 2.4 2019-09-06 10:59:08 +03:00
ff2048625b MXS-2652 Add test
Test case added to an existing test.
2019-09-06 10:12:16 +03:00
00feb61b23 MXS-2652 Do not clear maintenance flag when a server goes down
The set of flags to clear should be well-defined.
2019-09-06 09:43:32 +03:00
29dd16b333 Merge branch '2.3' into 2.4 2019-09-05 16:28:25 +03:00
ea9a823a25 2.3: Add missing documentation link
Throttle filter was not linked from contents page.
2019-09-05 16:27:14 +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
9cb95fb81d Merge branch '2.3' into 2.4
Empty commit.
2019-09-04 17:52:42 +03:00
6edbd52324 MXS-2642 Do not re-test a pam-service for a given user
Because of how the user-data was read, the same service name could be
found multiple times if the user-search query matched multiple rows. Now
the service names are read to a set, which ignores duplicates. The same
service may be attempted again if the authentication fails and user-data
is fetched again.
2019-09-04 17:31:10 +03:00
2a93d86f1a MXS-2655 Document session command limitation 2019-09-04 15:40:52 +03:00
46a3c9f61c Log interrupting packet's type during trx replay
This will allow non-SQL commands to be detected.
2019-09-04 15:40:52 +03:00
916e9ea3b1 Merge branch '2.4.2' into 2.4 2019-08-30 11:59:16 +03:00
52e3b80d95 Update release date 2019-08-30 11:13:07 +03:00
4448476bca Update 2.4 version 2019-08-30 07:46:10 +03:00
aad4148d77 Add 2.4.2 release notes and update change log 2019-08-29 17:51:39 +03:00
68f3b235e1 MXS-2650 Fix SSL-use with Connector-C
Authenticators and monitors now use SSL when configured. The fix has two parts:
1) Removed the extra SSLConfig inside SSLProvider, as SSLContext already contains
the config.
2) When inputting parameter values to mysql_ssl_set(), empty strings are converted
to NULL-pointers as the function expects those for unused values.
2019-08-29 17:46:26 +03:00
96e81a6b59 Merge branch '2.4' of github.com:mariadb-corporation/MaxScale into 2.4 2019-08-29 17:43:36 +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
3bd3b3c3c2 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:21:49 +03:00
5a7c68e3c9 MXS-2612 Ensure that destructor order does not matter
The new configuration system relieas upon static varibles being
used for declaring what arguments a particular module uses. To
ensure that the destruction order does not matter, we redundantly
store the needed data (the name).
2019-08-29 08:01:35 +03:00
0bb53bf411 Merge branch '2.3' into 2.4 2019-08-29 02:00:16 +03:00
7a1abc26d8 MXS-2631 Fix the ignoring of the system tables 2019-08-29 01:00:49 +03:00
cc038278d6 MXS-2631 Add system test 2019-08-29 01:00:49 +03:00
a09c2a800d MXS-2644 Check validity of the Clustrix license file
- Complain if it does not exist
- Complain if the license appears to be broken
- Complain if the license has expired
2019-08-22 15:24:38 +03:00
ec2e883879 MXS-2644 Complain if license file is not found
A file containing a statement for setting the Clustrix license
must exist in order to run Clustrix tests.
2019-08-22 14:04:45 +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
52df969e13 MXS-2644 Make ci Clustrix_nodes::prepare_server() more resilient
When checking the state of a Clustrix node, we do so in steps:Z
- Is Clustrix installed
- Is Clustrix running
- Can Clustrix be accessed using root
- Can Clustrix be accessed using the test user

and deal with a failure at each point.
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
891d0503a0 Merge branch '2.4.1' into 2.4 2019-08-21 11:00:29 +03:00
7e0b2d8896 Update 2.4.1 release date 2019-08-21 10:41:50 +03:00
ff6ff6a0a7 Update maintenance release of 2.4 2019-08-20 12:56:54 +03:00
e1f361b016 Merge branch '2.4.1' into 2.4 2019-08-20 12:48:29 +03:00
b47b7c15ed Change 2.4.1 release maturity to GA 2019-08-20 12:43:32 +03:00
bef9327f4c Remove test_mxb_http test
Fails on too many platforms due to curling to non-existent site
not causing an error.
2019-08-20 12:40:01 +03:00