14028 Commits

Author SHA1 Message Date
Johan Wikman
0dce20e5e7 Merge branch '2.3' into 2.4 2019-09-27 12:30:58 +03:00
Johan Wikman
a9f07844b3 MXS-2699 Accept '_[character_set] hex' as string
The purpose is to recognize e.g. /_utf8mb4 0xD091D092D093/ as
a valid string. The rule actually accepts /id integer/, but in
case the statement is something else but an '_' immediately
followed by a character set, followed by a hex number, it will
be rejected by the server so no harm done.
2019-09-27 12:23:04 +03:00
Johan Wikman
c01ecfed05 MXS-2699 Add test that reveals other bug 2019-09-27 12:23:04 +03:00
Johan Wikman
5bbb2e239d MXS-2699 Add rule for (expr [, expr]*)
Sofar at most (expr, expr) was accepted.
2019-09-27 12:23:04 +03:00
Johan Wikman
0c2a84c3a5 MXS-2699 Add test that reveals problem 2019-09-27 12:23:04 +03:00
Timofey Turenko
5b4af80b15 Clean up temparary directories after creation of binary repo
During the build first binary packages are generated and copied into
'pre-repo' direcotory. Then binary repository is created and next
step is to copy repository into final directory according agreed
binary repo sirectories structure. After it temparal direcotries
are not needed.
2019-09-26 11:08:23 +03:00
Johan Wikman
661c104d39 Merge branch '2.3' into 2.4 2019-09-26 09:31:21 +03:00
Johan Wikman
54ec30cc8e MXS-2654 Document QC cache statistics 2019-09-26 09:30:52 +03:00
Markus Mäkelä
f9a6649d77
Merge branch '2.3' into 2.4 2019-09-24 21:42:32 +03:00
Markus Mäkelä
fcc7642328
MXS-2694: Add support for COM_BINLOG_DUMP
The resultset processing now understands COM_BINLOG_DUMP and treats it as
a never-ending resultset.
2019-09-24 21:41:24 +03:00
Esa Korhonen
752dfbeaa8 Merge branch '2.3' into 2.4 2019-09-23 18:43:18 +03:00
Esa Korhonen
74016322fd Update .gitignore 2019-09-23 18:36:19 +03:00
Esa Korhonen
4fbb18535b MXS-2620 Mention that a normal master server shutdown may lose events 2019-09-23 18:35:41 +03:00
Markus Mäkelä
4d513941a7
Merge commit '8ac11a97c29ac9ce3e4099e77a9aa9475c1002b4' into 2.4 2019-09-23 14:07:32 +03:00
Markus Mäkelä
893f16fa53
Fix galeramon TOC
The syntax was wrong.
2019-09-21 21:17:23 +03:00
Markus Mäkelä
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
Markus Mäkelä
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
Markus Mäkelä
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
Markus Mäkelä
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
Markus Mäkelä
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
Johan Wikman
19487d2bfb Merge branch '2.3' into 2.4 2019-09-20 09:36:23 +03:00
Johan Wikman
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
Johan Wikman
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
Markus Mäkelä
bd3107e7ca
Merge branch '2.3' into 2.4 2019-09-19 15:37:43 +03:00
Markus Mäkelä
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
Markus Mäkelä
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
Markus Mäkelä
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
Markus Mäkelä
75e7c0da92
Merge branch '2.3' into 2.4 2019-09-19 10:56:52 +03:00
Markus Mäkelä
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
Johan Wikman
c695366012 Merge branch '2.3' into 2.4 2019-09-19 10:48:51 +03:00
Johan Wikman
749d20b659 Update 2.3.12 release date 2019-09-19 10:48:23 +03:00
Johan Wikman
e733403996 Add 2.3.12 release notes and update change log 2019-09-19 10:48:23 +03:00
Markus Mäkelä
8dccae63dd
Merge branch '2.3' into 2.4 2019-09-18 17:03:40 +03:00
Markus Mäkelä
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
Johan Wikman
ae99e8622f Update 2.3 maintenance version 2019-09-18 15:05:41 +03:00
Markus Mäkelä
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
Esa Korhonen
e03a2e3cf0 Add MariaDB-Monitor multimaster failover/switchover test 2019-09-18 12:19:09 +03:00
Esa Korhonen
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
Timofey Turenko
54109a5a33 Add dependecy on 'gnutls' to the installation document 2019-09-18 12:13:26 +03:00
Johan Wikman
1f26189ddd Merge branch '2.3' into 2.4 2019-09-17 14:55:34 +03:00
Johan Wikman
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
Timofey Turenko
7741fddb4b Merge branch '2.4' of github.com:mariadb-corporation/MaxScale into 2.4 2019-09-16 15:00:27 +03:00
Timofey Turenko
ea95d9a523 Fix has_label() function name 2019-09-16 12:17:12 +03:00
Johan Wikman
5e2d9f599b Merge branch '2.3' into 2.4 2019-09-16 09:50:05 +03:00
Johan Wikman
60c33b149c MXS-2674 Prevent read of unitialized variable 2019-09-16 09:32:47 +03:00
Johan Wikman
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
Johan Wikman
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
Johan Wikman
9969f21414 MXS-2674 Add test that reveals bug 2019-09-13 15:31:06 +03:00
Markus Mäkelä
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
Timofey Turenko
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