Commit Graph

14183 Commits

Author SHA1 Message Date
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
5a2c92c86d Fix compile error on Centos 2019-08-20 12:40:01 +03:00
34ab1843b2 Update 2.4.1 release notes 2019-08-20 12:40:01 +03:00
08cc8e023c 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:29:53 +03:00
503cf7e693 MXS-2572 Smartrouter test. Fix replication lag releated bug. 2019-08-20 10:57:36 +03:00
2a8c47b2e5 Fix compile error on Centos 2019-08-19 15:58:54 +03:00
da83115e6c Update 2.4.1 release notes 2019-08-19 13:35:37 +03:00
e6bf020b9e Continue name resolution fixing, add unit test
name_lookup() now returns all results given by getnameinfo(). When searching
for a server, finding one matching address in the lookup-results is enough for
a match.

Also, added a test for name_lookup(). The test is minimal on its own, as hardcoded
test cases are not generally valid.
2019-08-16 12:52:52 +03:00
29ec15c8eb Update documentation for 2.4.1
Small changes to MariaDBMonitor and Pam authenticator.
2019-08-16 12:18:39 +03:00