Commit Graph

12402 Commits

Author SHA1 Message Date
5a9e84d39a Merge branch '2.3' into develop 2018-12-18 00:00:00 +02:00
35d31801bb Merge branch '2.2' into 2.3 2018-12-17 23:52:56 +02:00
208a1d011e Pre-allocate return value in get_canonical
Since we know the worst-case size of a canonical statement is the size of
the query string, we can reduce the number of memory allocations to one in
the get_canonical function.
2018-12-17 23:16:01 +02:00
e386dcba88 Merge branch '2.3.2' into 2.3 2018-12-17 09:33:40 +02:00
8b6022ee6d Fix link in 2.3.1 release notes 2018-12-17 09:33:22 +02:00
8725205873 Update version in license text 2018-12-17 09:33:22 +02:00
e2c52ecd19 Update version in license text 2018-12-17 09:14:36 +02:00
405b4de1dd MXS-2220 Move MxsDiskSpaceThreshold definition to SERVER
Reduces include-clutter a bit.
2018-12-14 10:32:25 +02:00
6209d737e9 MXS-2220 server_alloc returns internal type
Also adds default initializers to SERVER fields.
2018-12-14 10:31:57 +02:00
3f81a37e70 MXS-2220 Move rest of dcb printing functions to private class 2018-12-14 10:18:14 +02:00
2b0eac2cd0 Move server disk space threshold setting to private Server-class
The setting can be read and written simultaneously and is protected with
a mutex.

The public SERVER-class is now abstract.
2018-12-14 10:18:14 +02:00
7cf73e0f13 MXS-2196: Fix use of DCBs in binlogrouter
The binlogrouter now handles the DCB creation a bit more correctly but it
still breaks a few of the rules.
2018-12-13 13:27:45 +02:00
a40e2f94f3 Fix file descriptor assertions
Zero is a valid file descriptor and no negative values other than -1 are
ever stored in the DCB::fd member.
2018-12-13 13:27:45 +02:00
ae62cf6eb6 MXS-2196: Fix DCB session check
The check was missing the special case of persistent connections.
2018-12-13 13:27:45 +02:00
20fe9b9dca MXS-2196: Rename session states
Minor renaming of the session state enum values. Also exposed the session
state stringification function in the public header and removed the
stringification macro.
2018-12-13 13:27:45 +02:00
7aaadfc550 MXS-2196: Fix dcb error flag assignment
The error flag was set before the function was called which caused the
function to never be used. As the core should handle the filtering of
multiple errors on the same DCB, the protocol modules should not check it.
2018-12-13 13:27:45 +02:00
01ba8bf886 MXS-2196: Fix freeing of resources on failed accept
When an attempt to accept a client DCB fails, the session should only be
deleted directly if the allocation of the client DCB fails. Otherwise the
closing of the DCB triggers the session deletion.
2018-12-13 13:27:44 +02:00
0b67a22add Merge branch '2.2.18' into 2.2 2018-12-13 11:01:30 +02:00
562bd0c3fb Update release date 2018-12-13 10:55:08 +02:00
63e334d6c0 MXS-2220 mxs::server_status() accepts status flags
The overload is required to get rid of dummy SERVER objects.
2018-12-13 10:20:06 +02:00
84e8efceca MXS-2220 Use private server class in runtime alter commands
This only affects commands started from MaxAdmin.
2018-12-12 16:06:08 +02:00
c7d5794953 Load storage library from build location during test
Without this change, the storage library is not found unless
MaxScale has been installed.
2018-12-12 13:38:53 +02:00
bad8c03df9 Update version number 2018-12-12 13:04:07 +02:00
136c0c3062 Add release notes for 2.2.18 and update change log 2018-12-12 12:44:48 +02:00
1ad4b339dc MXS-2025 Make variables that should be private private 2018-12-11 15:11:25 +02:00
f2a3a5737a MXS-2221 Fatal signal handling does not always create a core
Quick and simple fix, but this should be overhauled. See MXS-599.
2018-12-11 14:22:35 +02:00
f7822c20e4 MXS-2196: Remove authenticator default value
The authenticator can be chosen by the protocol module if no value is
specified. By having a default parameter, this code would never get
called.
2018-12-11 13:58:00 +02:00
48efa6d027 MXS-2213: Clear stored PS information
The information stored for each prepared statement would not be cleared
until the end of the session. This is a problem if the sessions last for a
very long time as the stored information is unused once a COM_STMT_CLOSE
has been received.

In addition to this, the session command response maps were not cleared
correctly if all backends had processed all session commands.
2018-12-11 13:54:10 +02:00
8b00a00ea7 MXS-2216: Use correct function in response processing
When a response to a prepared statement was processed, the number of EOF
packets was used to see whether the response was complete. This code used
a function that does not work with the special packet returned by a PS
preparation that is similar to an OK packet.

The correct method is to count the total number of packets in the
response.
2018-12-11 13:54:10 +02:00
8a8ac26e32 Cleanup monitor.hh
Also removes an unused field from several monitors.
2018-12-11 10:41:56 +02:00
e979a73cc0 Remove the STRSRVSTATUS macro
Use server_status() instead.
2018-12-10 15:55:07 +02:00
86574c16fb Return std::string in server_status() 2018-12-10 15:55:07 +02:00
08ed764675 MXS-2197 Rename all .h files under server to .hh 2018-12-10 13:07:23 +02:00
0927a0b938 MXS-2197 Remove most includes of maxscale/log.hh
All cc-files should include maxscale/ccdefs.hh, which includes
maxscale/log.hh. Consequently it need not be included again.
2018-12-10 13:07:23 +02:00
dc8c2f27f7 MXS-2197 Rename all module include files from .h to .hh 2018-12-10 13:00:46 +02:00
c0c9a9858d MXS-2197 Rename maxscale/log.h to maxscale/log.hh
In files either include maxscale/log.hh or remove include entirelly
as maxscale/ccdefs.hh includes it.
2018-12-10 12:58:17 +02:00
1b5b789342 MXS-2208 Move trim-functions from maxscale to maxbase
log.h now includes string.hh, which is conceptually wrong, but
log.h will shortly disappear and be superceded by log.hh.
2018-12-10 12:50:07 +02:00
60cbeaf287 MXS-2208 Compile classify as C++ 2018-12-10 12:50:07 +02:00
d44cf7b20e MXS-2208 Allow dbfw parser to be compiled as C
maxsbase/log.h will turn into C++, but the flex and bison
generated files are by default C.
2018-12-10 12:50:07 +02:00
80805292ef MXS-2208 Compile avro as C++
An unantecipated sidestep in the path of introducing a small
HTTP library to maxbase.
2018-12-10 12:50:07 +02:00
f2fcf79fb2 Cleanup server.hh
Simplify type definitions.
2018-12-05 16:45:32 +02:00
7ca421fe5f MXS-2196: Fix persistent connections
The connections now use the correct parameter.
2018-12-05 15:30:44 +02:00
3cc34f0696 MXS-2196: Don't loop over persistent connections
When doing a loop over each DCB, don't process DCBs without sessions. For
now this is correct behavior as only DCBs in the persistent pool have no
session.
2018-12-05 15:30:44 +02:00
77477d9648 MXS-2196: Rename dcb_role_t to DCB::Role 2018-12-05 15:30:44 +02:00
0b9241913c Merge branch '2.3' into develop 2018-12-05 13:45:24 +02:00
467231480f Merge branch '2.3.2' into 2.3 2018-12-05 13:27:39 +02:00
8d77ddec63 MXS-2208 Add simple Http library
- Built on top of Curl
- Currently only GET
2018-12-05 12:48:42 +02:00
bec9455a74 MXS-2205 Combine routingworker.h with routingworker.hh 2018-12-05 11:12:20 +02:00
9f721f725e MXS-2205 Convert maxscale/protocol/mysql.h to .hh 2018-12-05 11:12:20 +02:00
0d09b56f58 MXS-2025 RWBackends as a vector of unique_ptr:s
For lifetime management keep RWBackends in a vector of unique_ptrs.
RWSplitSession keeps the unique_ptrs very private, and provides a vector
of plain pointers for all other interfaces.
2018-12-05 10:23:57 +02:00