Commit Graph

12846 Commits

Author SHA1 Message Date
a5898f83f9 Fix mysqlmon_rejoin_manual
Added some extra connection refreshing and monitor waiting. Unclear why this
is needed now but it seems to work.
2019-06-13 10:28:14 +03:00
239c4a8615 MXS-2549: Install prelink config file
The prelink configuration file should prevent maxctrl from being corrupted
by it.
2019-06-12 17:49:41 +03:00
74ef8a9591 Update 2.3 maintenance version 2019-06-12 14:28:37 +03:00
493155127b Merge branch '2.3.8' into 2.3 2019-06-12 14:27:22 +03:00
208377b262 Update 2.3.8 release date 2019-06-12 14:26:15 +03:00
bb92d61a1b Fix KILL command packet boundary detection
If a packet with a KILL query was followed with another packet in the same
network buffer, the code wouldn't work as it expected to receive only one
packet at a time.
2019-06-12 12:20:26 +03:00
b98ff222f0 Merge branch '2.3.8' into 2.3 2019-06-12 11:26:33 +03:00
6ca5143141 Make kill_query more robust
The test now uses an infinite loop in the SQL to make sure the execution
is interrupted.
2019-06-11 21:30:16 +03:00
814ae196e9 qc_sqlite: Replace strncpy with memcpy
On RHEL8 the former may give rise to incorrect

    error: 'char* strncpy(char*, const char*, size_t)' destination
    unchanged after copying no bytes [-Werror=stringop-truncation]
2019-06-11 20:14:58 +03:00
95606370c8 MXS-2551 Do not print deprecated parameters into serialized config files
In MaxScale, a "deprecated" parameter is not in use and can be ignored.
Leaving the parameters out of serialized configuration files avoids warning
messages.
2019-06-11 15:55:35 +03:00
5b14e28fc8 Fix maxavrocheck build failure on Ubuntu Trusty
The return value of realpath should be checked even if it is pointless.
2019-06-11 14:15:06 +03:00
acc5863fe2 MXS-2442 ':N' accepted as pos. parameter in Oracle mode 2019-06-11 13:53:09 +03:00
c68cb788cc MXS-2552 Update DISK plugin documentation 2019-06-11 13:21:17 +03:00
4716f5b48f Fix buffer end pointer comparison in maxavro
The buffer pointer can point to the end pointer if it is the last value in
the buffer.
2019-06-11 09:44:27 +03:00
ce3d7acf2d Fix maxavrocheck path processing
A null path could be given if realpath failed to resolve the name. This
hides the actual reason of the failure making it harder to resolve it.
2019-06-11 09:44:27 +03:00
5adc8fa5bd Add missing HEAVY labels to big tests 2019-06-11 09:44:27 +03:00
5f5e402a32 Reconnect before find_field in mysqlmon_rejoin_manual
This appears to fix the test failure but the reason why it worked before
still remains a mystery.
2019-06-11 00:09:26 +03:00
b33cd85b4d Update release notes and change log for 2.3.8 2019-06-10 14:37:57 +03:00
57029bb1a1 MXS-2445 Add logrotate config file 2019-06-10 12:51:03 +03:00
1ba77b59e2 MXS-2548 Show correct monitor state in "maxadmin list monitors"
The code OR:d with 0.
2019-06-06 17:09:41 +03:00
65975a38e2 Add test for MXS-2355
The test attempts to log in using mysql_clear_password.
2019-06-06 16:36:36 +03:00
0469d57ede Merge branch '2.3' of github.com:mariadb-corporation/MaxScale into 2.3 2019-06-05 14:53:28 +03:00
f0c4fd5723 MXS-2250 Add test that reveals the problem
Before the MXS-2250 fix, the following ends with an error:

    CREATE TEMPORARY TABLE t (f INT);
    DESCRIBE t;

Reason is that the first is sent to the master (and the table will
not be replicated to slaves) and the latter to some slave.
2019-06-05 14:29:30 +03:00
b8d601aab2 MXS-2250 Reveal table information for 'DESCRIBE tbl'
When a statement like 'DESCRIBE tbl' is classified, the table
name will now be available so that a router can check whether the
table is a temporary one. In that case, the statement must be sent
to the master.
2019-06-05 14:28:45 +03:00
16005c452e run create_user* under sudo 2019-06-05 13:42:39 +03:00
de978be955 remove '-u root' from create_user*.sh
Call of MariaDB client from local machine with sudo with '-u root' parameter
does not work with 10.4
2019-06-05 12:57:46 +03:00
c219187a1e Merge branch '2.2' into 2.3 2019-06-03 13:27:57 +03:00
5a5d625b15 Update MariaDBMonitor and PAM authenticator documentation 2019-06-03 12:15:13 +03:00
d68f66fede MXS-2538: Send master charset in the handshake packet
By iterating over the servers and sending the master's charset we are
guaranteed a "known good" charset. This also solves the problem where a
deactivated server reference would be used as the charset and server
version source.
2019-05-31 23:01:18 +03:00
d88846fab4 MXS-2515: Add KILL QUERY test case
The test checks that queries are killed properly.
2019-05-31 14:01:16 +03:00
e9c652555d MXS-2538: Fix hang on unknown KILL
Unknown KILL commands are now forwarded as-is to the routers.
2019-05-31 14:01:16 +03:00
220fea3546 MXS-2464: Retry failed session commands
If the execution of a session command fails on a master, it is retried
again. If the master is not available, the response will be returned from
one of the slaves.
2019-05-31 14:01:15 +03:00
6d089e3283 Clear session commands in Backend::close
If a reconnection would take place, the old commands would get executed.
2019-05-31 14:01:15 +03:00
cb089f69e6 Add read retry assertion
The retrying of a read on a slave should only be done when the failing
server is waiting for a result and it was the last server from which a
result was expected.
2019-05-31 14:01:15 +03:00
625740e69d MXS-2464: Fix crash on failed session command
If the master fails when a session command is being executed with
delayed_retry enabled, a null query would get placed into the query
queue. This change simply prevents the crash and closes the session even
though the query could be retried.
2019-05-31 14:01:15 +03:00
13b258a151 MXS-2464: Add test case
The bug appears when a session command that is executed on the master
fails. The logic in the code doesn't take this case into consideration
when it processes failed connections.
2019-05-31 14:01:15 +03:00
9481992bb9 Fix dbfwfilter release mode build failure
GCC 9 complained about null format strings even though the argument given
was never null.
2019-05-31 14:01:15 +03:00
d5e8315290 Assert that buffers are non-null in mysql.h
The functions assume that the buffer is never null and thus should be
asserted.
2019-05-31 14:01:15 +03:00
a4ee390fe5 Never construct mxs::Buffer from nullptr
A mxs::Buffer should never be constructed from a null pointer and if done,
it is very likely due to an error.
2019-05-31 14:01:15 +03:00
9df6c9aeca Fix weightby documentation
The parameter names were different.
2019-05-31 14:01:15 +03:00
47ae75c6a5 Make MXS_COM_UNDEFINED a part of the enum
This way it is a valid enum value and it prevents UBSAN from complaining
about it.
2019-05-31 14:01:14 +03:00
4e6ca33053 Add UBSAN flag to builds
The -DWITH_UBSAN flag enables the undefined behavior detection provided by
GCC.
2019-05-31 14:01:14 +03:00
ee7e63a611 MXS-2464: Assert that responses are expected
A query should not be queued if no responses are expected. The code that
executes queued queries should be dead code and this assertion would catch
it.
2019-05-31 14:01:14 +03:00
1012b95544 Merge branch '2.2' into 2.3 2019-05-31 12:40:15 +03:00
2b3a9b2b57 Initialize MXS_SESSION::autocommit 2019-05-29 18:46:33 +03:00
ed63493875 Return valid values for undefined mdbci variables
If a variable is not defined in the network configuration, a valid value
is returned.
2019-05-29 18:46:33 +03:00
84986dbf92 MXS-2520: Add test case
The test reproduces the problem and verifies that the fix works.
2019-05-29 18:46:33 +03:00
81254953d1 MXS-2520: Allow master reconnection on reads
If only the master is available and a reconnection must take place, it
must be allowed to happen in all cases.
2019-05-29 18:46:33 +03:00
442d8bed9a MXS-2479 Add username and host to PAM authenticator log messages 2019-05-29 17:32:27 +03:00
114e095e1b MXS-2525: Fix non-plugin authentication
Older clients assume the plugin used for authentication is
mysql_native_password. If the client doesn't request plugin
authentication, don't treat it as an error.
2019-05-29 12:41:53 +03:00