Commit Graph

4320 Commits

Author SHA1 Message Date
d632c195ff 2.4.19 Update change date 2022-01-04 15:47:38 +02:00
01dbcd8372 MXS-3915: Never cache autocommit queries
As both `SET autocommit=1` and `SET autocommit=0` share the same canonical
query form but do not have the same types, they should not be stored in
the cache.
2021-12-14 16:34:50 +02:00
e9da486c95 MXS-3885: Fix loading of configs from directories
The global config handler should only be used for the persisted
maxscale.cnf file, not for all files named maxscale.cnf.
2021-11-19 07:18:21 +02:00
e087a327fb MXS-3879: Fix loading of persisted global options
The code is now identical to the one in 2.5 and it still suffers from the
problem described in MXS-3885. This will be fixed in a separate commit.

This commit changes the persisted filename but since it was ignored, it
won't affect old installations.
2021-11-18 11:42:13 +02:00
2a54224927 2.4.18 Update change date 2021-10-29 08:29:51 +03:00
0bf5641d80 MXS-3800: Explain lost_slave events
Currently the state change explanations are only added to mariadbmon. They
are less relevant for Galera clusters as they themselves explain why they
change their states but should still be added to make them easier to
analyze.

The event that isn't explained and is most often encountered is the loss
of a Slave status. Most often the loss of a Slave status happens because
either the IO thread or the SQL thread has stopped. Printing the states of
the threads as well as the latest error should hint at what caused the
outage.

The information can be added to the REST API in 2.5 where the monitors can
add extra information to the server JSON.
2021-10-20 10:03:03 +03:00
136d0271df Log DCB remote on SSL error
This should help identify the client which caused the error to occur.
2021-10-05 13:12:49 +03:00
b4edc74926 MXS-3609: Use 64-bit integers for statistics
This should be enough to avoid the problem of integer overflow in 2.4.
2021-08-31 08:15:02 +03:00
8765eb88fa MXS-3415: Export config with correct permissions
The created file is now created with the correct permissions: read and
write permissions for the user and group.
2021-08-02 09:30:06 +03:00
a1b3dfff54 MXS-3114: Fix creation of listeners with sockets
Backporting to 2.4.

The socket parameter wasn't correctly extracted.
2021-06-12 01:12:30 +03:00
784cab2daf MXS-3114: Fix duplicate listener check
Backporting to 2.4.

The listener search used the host and port for listeners that used sockets
and vice versa. This caused multiple listeners with sockets to fail to be
created.
2021-06-12 01:12:21 +03:00
a8bfbbe254 2.4.17 Update change date 2021-03-08 09:03:02 +02:00
19066ae383 MXS-3425: Fix handling of LOAD DATA LOCAL INFILE
The LOAD DATA LOCAL INFILE is handled in a way where it returns two
results that both are complete: the first one with the file being
requested and the second one with the final OK packet. Readwritesplit
called session_book_server_response for both statements which caused the
current query index to drop to -1 which in turn was unconditionally used
as the buffer offset.

The new check for the invalid index value will help prevent crashes in
production while still allowing it to be detected while testing.
2021-03-03 11:02:15 +02:00
8df55ca913 Merge branch '2.4.16' into 2.4 2021-02-17 13:49:29 +02:00
3e7b8fcdc6 Fix get_canonical bug in treating decimal numbers
"select 1.", became "select 1.", should be "select ?"
2021-02-17 11:53:36 +02:00
0224f24077 2.4.16 Update Change Date 2021-02-16 14:59:00 +02:00
3620db9b0a Ignore the default value of connector_plugindir
The default value isn't a valid path and should be changed later on.
2021-02-11 16:43:00 +02:00
e48c5d11fc MXS-3345: Create persistdir earlier
The directory was created when the configuration was being processed and
it wasn't checked unless it was configured to a non-default value. With
the addition of the path validation, the directory must be created
earlier.
2021-02-10 15:05:40 +02:00
47bcb6ad02 MXS-3345: Defer path permission checks
Doing the directory permission checks after all the values have been set
helps avoid problems with intermediate values that aren't valid. This
happens when --basedir generates invalid derived paths and the correct path
is provided as an argument right after it.

The path parameter is read from the configuration file only if it hasn't
been modified by a command line option. The case where an invalid command
line option is given but a valid configuration parameter would override it
is still treated as an error.

Also added a clarifying comment into set_dirs to make sure the handling
for the two path parameters is not moved inside set_runtime_dirs.

Fixed the testing scripts for the REST API and MaxCtrl now that the
directory permission checks are done correctly. Previously some paths seem
to have been ignored.
2021-02-09 17:36:41 +02:00
fac3ff4366 MXS-3346: Fix tarball plugin directory
The plugin directory wasn't installed and using --basedir with a path to
the extracted tarball wouldn't be enough.
2021-01-19 14:32:12 +02:00
dd340f9ec8 MXS-3346: Fix --basedir write permission checks
The connector plugindir required write access when it doesn't need it.
2021-01-19 14:32:11 +02:00
c5bcf7a8b1 2.4.15 Update change date 2021-01-18 15:30:30 +02:00
26d2c2387f Fix monitor connection error messages
The connection is closed by the ping_or_connect_to_db function which
causes the information about why the connection failed to be lost.
2021-01-18 12:02:40 +02:00
7e6eb55618 MXS-3324 Enable autocommit when using Connector-C
May solve some monitor issues on servers with default autocommit
set to off.
2020-12-17 13:37:30 +02:00
0c904eae5e MXS-3158 Preserve character set and collation when altering events
During switchover/failover, server events are altered. The ALTER
EVENT command automatically modifies the event charset and collation
to the values of the connetion running the query. This may cause
the event to become invalid.

Fixed this by changing connection charset and collation to the ones
in the event description just before altering it.
2020-12-14 14:06:43 +02:00
1d600a4f10 Merge branch '2.3' into 2.4 2020-12-01 10:11:56 +02:00
74a2ae727e Fix REST API startup error
The error generated by the library seems to use the port argument even if
a sockaddr argument is given.
2020-12-01 09:58:58 +02:00
6c160a3529 Log query classification info for session_trace
This fixes the bug where the detailed query classification info was only
logged when LOG_INFO was globally enabled.
2020-11-23 13:13:19 +02:00
56575882d7 MXS-3301 Rename clustrix -> xpand everywhere 2020-11-19 13:44:06 +02:00
47e1c04d09 MXS-3301 Look for "xpand" to find out whether server is Xpand
We will continue to look for "clustrix" as well so that MaxScale
will continue to work with older releases.
2020-11-19 13:43:30 +02:00
df36ef86d0 2.4.14 Update Change Date 2020-11-16 14:23:26 +02:00
5a33d45d4d Merge branch '2.3' into 2.4 2020-11-16 09:25:43 +02:00
c49f17f428 MXS-3295: Fix layout of the classify endpoint
The values were stored in the parameters object which is used for
configuration parameters in other endpoints. The proper place for them is
inside the attributes object.
2020-11-16 09:20:50 +02:00
836334a7a8 Merge branch '2.3' into 2.4 2020-10-23 12:42:46 +03:00
aa5a63be14 Fix debug argument concatenation
The buffer was shorter than the arguments given to it which caused a heap
buffer overflow.
2020-10-23 10:53:26 +03:00
3c2299d1b5 MXS-3239 Add mapping clustrixmon -> xpandmon
So that existing configurations continue to work.
2020-10-19 13:59:46 +03:00
faaf7f483e 2.4.13 Update Change Date 2020-10-14 09:15:46 +03:00
c25099da01 Improve SSL error message
Log the type of the DCB to help figure out where the error came from.
2020-09-22 16:42:16 +03:00
0be629e5c5 Merge branch '2.3' into 2.4 2020-09-15 18:02:24 +03:00
6129f588a1 Don't parse COM_STMT_EXECUTE packets
The function information is only available for COM_QUERY packets.
2020-09-15 17:55:56 +03:00
caedf79464 Merge branch '2.3' into 2.4 2020-08-28 14:24:16 +03:00
63a050bd7a MXS-3051: Show connection TLS cipher
This tells the user whether a session is using TLS or not. Currently, only
the client TLS cipher is shown in MaxCtrl as the backend ciphers require
additional formatting.
2020-08-28 12:16:17 +03:00
ebdb9655e6 MXS-3143: Route FOUND_ROWS to last used target
This will cause the query to be routed to the same server where a possible
SQL_CALC_FOUND_ROWS was executed.
2020-08-28 11:49:07 +03:00
bce427f4ad Merge branch '2.3' into 2.4 2020-08-27 15:21:36 +03:00
dbe94e2dbe MXS-3132: Fix monitor timeouts default values
The values are now what the documentation states they are.
2020-08-27 14:47:27 +03:00
babcda3eca 2.4.12 Update Change Date 2020-08-24 09:42:48 +03:00
df87df3a0d Reduce slow DCB shutdown timeout to 2 seconds
This helps reduce the effect that a hanging connection has on the whole
system.

Making this configurable shouldn't be needed as long as the rate of
authentication failures doesn't exceed an acceptable level. In most
practical cases allowing two seconds for authentication to complete should
be enough.
2020-08-21 14:38:37 +03:00
c5b47389df MXS-3106: Always write the final COM_QUIT
This seems to help with a regression that was introduced in 2.4.11.
2020-08-21 14:38:37 +03:00
c0cd751215 Merge branch '2.3' into 2.4 2020-08-20 14:29:16 +03:00
606ae6d2b0 MXS-3121 Log stmt being classified in fatal signal handler
This will make it easier to fix classifier related crashes.
2020-08-20 13:32:24 +03:00