Commit Graph

4273 Commits

Author SHA1 Message Date
eb0432b7b2 MXS-2860: Extract socket error only when needed
As the process of extracting the socket error also resets it, it should be
done only when necessary.
2020-03-06 13:56:42 +02:00
9eceeffc04 MXS-2811: Set TLS version with MARIADB_OPT_TLS_VERSION
The ssl_version values now also affect the TLS version used by the
connector.
2020-03-05 21:13:38 +02:00
4a5293ebba Merge branch '2.3' into 2.4 2020-03-02 18:05:11 +02:00
67fee60f80 Fix Auth Error server status
The mon_ping_or_connect_to_db resets the MYSQL handle which caused the
loss of the error message. Returning a new enumeration value for
authentication errors solves this problem.
2020-03-02 16:32:35 +02:00
4e5d9099ed Merge commit 'e180c200555576cc1f9bfc77342abba422934e4a' into 2.4 2020-03-02 12:51:57 +02:00
e180c20055 MXS-2899: Update charset only when successful
By updating the server charset only when we successfully query it, the
charset will not change due to network connectivity problems.
2020-02-27 14:18:51 +02:00
9ca2c7f777 Merge branch '2.3' into 2.4 2020-02-24 14:10:19 +02:00
b241f7ed2a MXS-2896: Fix monitor connection creation
The connection is now correctly null after a failed attempt to connect.
2020-02-24 12:02:50 +02:00
405b10ad50 Fix server TLS regression
The code in 2.3 was changed to allow "empty" SSL definitions now that the
system CA is used. The code in 2.4 did not allow this which caused non-TLS
connections to be created when only ssl=true was defined.
2020-02-17 20:03:35 +02:00
5842242e94 Fix debug assert on SSL with system CA
The debug assertion was not updated in the merge.
2020-02-17 20:03:35 +02:00
912cb711e3 MXS-2844: Fix binlogrouter destruction
Binlogrouter services can now be destroyed at runtime.
2020-02-14 08:55:48 +02:00
f576680ed9 Update 2.4.7 change date
Only the files that were not already updated as part of the
2.3.17 release.
2020-02-12 15:21:44 +02:00
8b763fb88b Merge branch '2.3' into 2.4 2020-02-12 08:27:48 +02:00
cfb3f79b54 Update 2.3.17 Change Date 2020-02-10 15:28:38 +02:00
cb016fb90a Merge branch '2.3' into 2.4 2020-02-10 10:47:47 +02:00
39cf6a8000 MXS-2860: Update last_read only on successful reads
This prevents empty or failed reads from updating the last_read flag which
in turn gives us the correct connection idle time when network errors
occur.
2020-02-10 10:46:32 +02:00
98e6bdcd90 MXS-2878: Enforce TLS for Connector-C connections
Connector-C connections now require TLS if the servers are configured with
it.
2020-02-10 10:46:32 +02:00
4a725da940 Merge branch '2.3' into 2.4 2020-01-31 12:27:50 +02:00
f6d848d58c MXS-2859: Treat newlines in strings as errors
Allowing raw newlines in string values breaks configuration serialization.
2020-01-30 10:44:00 +02:00
043df59ffa Merge branch '2.3' into 2.4 2020-01-29 14:38:29 +02:00
a311613935 MXS-2858: Fix backend side throttling
The code registered both client and backend callbacks for backend
DCBs. This caused the whole connection to hang if backend side throtting
was ever triggered.
2020-01-29 14:35:52 +02:00
f53faba795 MXS-2857: Disable peer verification by default
The fix to the bug where peer certificates were validated but not required
caused the default behavior to change. The default should've changed at
the same time the fix was made.
2020-01-29 14:35:03 +02:00
25045c41a2 Merge branch '2.3' into 2.4 2020-01-24 13:06:42 +02:00
a0affe1bb7 MXS-2784: Use SQL to fetch default character set
The Connector-C was changed to always return only the client's charset,
not the actual charset that the connection ends up using. To cope with
this, the code has to use SQL to join the default character set name to
the default collation for it which can be used to extract the numeric ID
of the charset.
2020-01-24 10:51:15 +02:00
4f1ae70765 Allow multiple fatal signals
As long as the same thread never handles more than one fatal signal,
multiple fatal signals can be processed. This should guarantee that the
stacktrace is printed into the log while guaranteeing that recursion never
takes place if the handling of a fatal signal causes a fatal signal to be
emitted.
2020-01-23 18:37:57 +02:00
714dece7dd Update 2.4.6 Change Date
We use same as for 2.3.16.
2020-01-21 13:22:25 +02:00
aa84c4dc7e MXS-2821: Improve REST API errors
The error message now states what the real reason of the error was.
2020-01-21 09:18:32 +02:00
df3ae56952 Merge branch '2.3' into 2.4 2020-01-17 09:26:50 +02:00
b573fcf030 MXS-2839: Make ssl_ca_cert optional
Not defining ssl_ca_cert causes the system default verification chain to
be used.
2020-01-17 09:21:06 +02:00
60416f5b96 Fix max_connection for 2.4
The merge from 2.3 caused the mechanism to break in 2.4 where the old code
was correct.
2020-01-16 12:10:31 +02:00
a7e0142224 Merge branch '2.3' into 2.4 2020-01-15 11:29:37 +02:00
790d90f229 Update 2.3.16 Change Date 2020-01-15 11:08:51 +02:00
3ed30327e5 Merge branch '2.3' into 2.4 2020-01-14 10:10:58 +02:00
1d8139587b MXS-2710: Move client_count handling into client DCB
Due to the fact that both client connections and listeners use sessions in
2.3, the client_count tracking must be done inside the client DCB. In
addition to this, the max_connections check didn't take the current
pending connection into account which caused an off-by-one error.

This commit fixes the connection_limit test failure that was introduced by
commit 6306519e5e75575ba083ee2f0edfe7e624da5d26.
2020-01-13 17:12:04 +02:00
09c55111cc Merge branch '2.3' into 2.4 2020-01-09 06:59:00 +02:00
6e8318f72f MXS-2829: Remove config file when deleting a filter 2020-01-08 15:30:15 +02:00
b555115fa2 Merge branch '2.3' into 2.4 2020-01-07 11:12:02 +02:00
36b0196c3e MXS-2825: Fix basic user privileges
All POST, PUT, DELETE and PATCH commands should be prevented regardless of
whether they define a request body.
2020-01-07 10:40:41 +02:00
6306519e5e MXS-2710: Move client_count handling inside Session
By incrementing the counters when the session is created, we know that the
counter will always be decremented correctly. This does cause the listener
session to be counted as an actual session but this is already present in
the statistics calculations and is something we have to live with in 2.3
This change also makes it possible to overshoot the connection count
limitation as the session creation is delayed until authentication
fails. Both of these problems are fixed in 2.4.
2020-01-07 10:40:40 +02:00
9428c31bc4 Merge branch '2.3' into 2.4 2020-01-02 11:22:52 +02:00
1092203779 Allow non-head use of gwbuf_copy_data
Non-head links in a buffer chain can now be used with gwbuf_copy_data
without triggering the debug assertion.
2019-12-31 07:26:17 +02:00
03d45c2ace Allow multiple fatal signals
As long as the same thread never handles more than one fatal signal,
multiple fatal signals can be processed. This should guarantee that the
stacktrace is printed into the log while guaranteeing that recursion never
takes place if the handling of a fatal signal causes a fatal signal to be
emitted.
2019-12-31 07:26:16 +02:00
ff78a8bca5 Fix api reseponse 2019-12-30 10:06:59 +02:00
5fe97808e3 Merge branch '2.3' into 2.4 2019-12-20 11:44:11 +02:00
e725ebb7d0 Add missing set of fake event flag
The FakeEventTask called the actual DCB handler with a fake task but it
didn't set the fake event flag. This caused KILL queries to be treated as
if they were network errors.
2019-12-19 11:31:51 +02:00
4ae22f9991 Merge branch '2.3' into 2.4.5 2019-12-19 10:03:35 +02:00
a73b183555 MXS-2813: Mask password values in output
The password values are now masked with asterisks. This tells whether a
password is set or not but it does not expose any information about the
password itself.
2019-12-19 09:56:00 +02:00
a9a2b753c0 Update 2.4.5 change date 2019-12-18 13:25:03 +02:00
f39ed6803e Merge branch '2.3' into 2.4 2019-12-17 14:04:47 +02:00
b0a1eddb6c Store ignored error information
The errors that are ignored by readwritesplit are now stored as the
current close reason in the Backend. This allows the information about the
error to be retained and it can be used later in the error handler to
display the true reason why the connection was closed.
2019-12-17 13:48:51 +02:00