Commit Graph

14416 Commits

Author SHA1 Message Date
4fbb18535b MXS-2620 Mention that a normal master server shutdown may lose events 2019-09-23 18:35:41 +03:00
4d513941a7 Merge commit '8ac11a97c29ac9ce3e4099e77a9aa9475c1002b4' into 2.4 2019-09-23 14:07:32 +03:00
893f16fa53 Fix galeramon TOC
The syntax was wrong.
2019-09-21 21:17:23 +03:00
d499ff84af Speed up mxs1713_lots_of_databases
The SHOW DATABASES greatly slows down the test. By doing that only from
time to time, the test time drops from roughly 160 seconds to 15
seconds. There's also no point in continuing the test after a failure has
been seen.

Also added a missing sync_slaves to the database creation to make sure
they are created on all servers before the test starts.
2019-09-21 21:16:55 +03:00
9b0b152109 Fix debug assertion on readq prepend
If data was prepended to the readq while it was empty, the debug assertion
in gwbuf_append that checks the tail pointer would be hit.
2019-09-21 21:16:55 +03:00
9ce788ff0b MXS-2690: Fix duplicate database detection
Empty duplicate databases are now correctly detected since the results
will always return the database name combined with a trailing period.
2019-09-21 21:16:55 +03:00
8ac11a97c2 Extend pipe buffer size error message
The message now logs the instructions on how to increase the per-process
page limit for pipe buffers. This can happen if fs.pipe-max-size
multiplied by the number of workers exceeds the value of
fs.pipe-user-pages-soft multiplied by 4096.
2019-09-21 10:30:00 +03:00
6830f517b4 Improve message queue logging
Logging the pipe buffer size on startup will tell how large it was at the
time when MaxScale read it. If there are some abnormalities in it, this
will make it visible.

Logging the worker ID when the posting of a message fails will tell which
particular worker it was. For example, if the worker in question is the
main worker (i.e. ID 0), we know there's something that's blocking the
processing.
2019-09-21 09:43:12 +03:00
19487d2bfb Merge branch '2.3' into 2.4 2019-09-20 09:36:23 +03:00
aa7be1447d MXS-2688 Handle SET [ROLE|NAMES|PASSWORD|CHARACTER] explicitly
It's not correct to claim that they would modify a system variable,
so they are purely classified as QUERY_TYPE_SESSION_WRITE.
2019-09-20 09:27:38 +03:00
f587ec191d MXS-2688 Add QC operator QUERY_OP_SET
Allows RWS to unconditionally send all SET-statements to
all servers.
2019-09-20 09:27:38 +03:00
bd3107e7ca Merge branch '2.3' into 2.4 2019-09-19 15:37:43 +03:00
f46f873dc1 Add verbose backend status helper
This allows the same verbose information to be logged in the cases where
it is of use. Mostly this information can be used to figure out why a
certain session was closed.
2019-09-19 13:41:49 +03:00
fd0c156655 MXS-2564: Reconnect only when necessary
By doing the reconnection only when a new query arrives, we prevent the
excessive reconnecting that is done when a server's actual and monitored
states are in conflict.
2019-09-19 13:41:49 +03:00
40d05e8278 Report more details when the master is unavailable
By dumping the connection state we'll know when the connection was opened
and closed and the reason why it was closed.
2019-09-19 12:55:31 +03:00
75e7c0da92 Merge branch '2.3' into 2.4 2019-09-19 10:56:52 +03:00
87b1dd2703 Fix stacktrace generation
The stacktraces weren't generated on systems where /bin/test didn't exist.
2019-09-19 10:56:18 +03:00
c695366012 Merge branch '2.3' into 2.4 2019-09-19 10:48:51 +03:00
749d20b659 Update 2.3.12 release date 2019-09-19 10:48:23 +03:00
e733403996 Add 2.3.12 release notes and update change log 2019-09-19 10:48:23 +03:00
8dccae63dd Merge branch '2.3' into 2.4 2019-09-18 17:03:40 +03:00
f4a51e0b47 Fix split brain detection
Galeramon will now only use the larger cluster in case a split brain
situation occurs. If the clusters are of equal size, the one whose UUID
compares less will be used. This will guarantee that all MaxScales that
see the same picture will end up using the same cluster.
2019-09-18 16:43:12 +03:00
ae99e8622f Update 2.3 maintenance version 2019-09-18 15:05:41 +03:00
9c007ff401 Add missing workaround files to tgz installation
2.3 has new directories that must be present in the tarball.
2019-09-18 14:55:23 +03:00
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
54109a5a33 Add dependecy on 'gnutls' to the installation document 2019-09-18 12:13:26 +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