Commit Graph

12369 Commits

Author SHA1 Message Date
57fe5ff56a Fix error packet stringification function
The code read past the stack buffer.
2019-01-16 09:43:49 +02:00
021d48f94c Log low-level reason and idle time on master failure
If the connection to the master is lost, knowing what type of an error
caused the call to handleError helps deduce what was the real reason for
it. Logging the idle time of the connection helps detect when the
wait_timeout of a connection is exceeded.
2019-01-16 09:43:49 +02:00
9def07ab4a Document connection_timeout behavior
The fact that a warning is logged was not documented.
2019-01-15 18:42:20 +02:00
8cef8b9472 Compile MariaDBMonitor unit tests only if flag is set 2019-01-15 15:44:21 +02:00
1c8c222ad1 MXS-2112 Add python script for assembling support files
The script adds config and log files into a zip archive. Passwords in
config files are censored. Also attempts to read current status by calling
maxctrl. If core-file exists, runs gdb on it to gather call stack.
The script is installed to the binary file directory.
2019-01-14 16:34:30 +02:00
bec33be672 Backport to 2.2: Simplify mxs1743_rconn_bitmask
The test now uses maxctrl to count how many connections there are. This
helps avoid creating new users on the database and works around the slave
syncing problems.
2019-01-11 13:13:04 +02:00
34359bdc83 Merge branch '2.2' into 2.3 2019-01-11 13:02:43 +02:00
9284e8e64c Merge branch '2.2.19' into 2.2 2019-01-11 13:02:05 +02:00
18c57dc6cc Update 2.2.19 release date 2019-01-11 12:58:33 +02:00
6eeb02d55d Fix writeq_low_water documentation
The throttling is removed once the buffer size falls under
writeq_low_water, not writeq_high_water.
2019-01-11 10:27:11 +02:00
8ac786110e MXS-2255: Fix COMMIT matching
The code used a rather questionable method for parsing SQL statements
instead of using the query classifier for detecting transaction start and
stop events.
2019-01-11 10:27:00 +02:00
4c61b646a4 Wait two intervals in mysqlmon_failover_rejoin_old_slave
The failover process takes at least two intervals to happen. With only a
single wait, it was down to luck whether the test would succeed.
2019-01-11 09:34:06 +02:00
2e1baae7f7 Update maintenance version in 2.2 minor branch 2019-01-10 12:43:31 +02:00
d3c7e4e23f Update MaxCtrl packages
A library required the globby library but the version it required didn't
work. Also updated lodash and inquirer.
2019-01-10 11:23:13 +02:00
6977828f2d Update maintenance version in 2.2 minor branch 2019-01-10 10:04:20 +02:00
147f0bb656 Extend master failure error message
The error now describes the failure mode in more detail. This should make
post mortem analysis of failed connections a lot easier.
2019-01-09 20:05:38 +02:00
78ea12b4c1 Merge branch '2.2' into 2.3 2019-01-09 09:13:59 +02:00
27b3ab28e0 Update 2.2.19 release notes 2019-01-09 09:13:07 +02:00
e64b034334 MXS-2248 Add change that fixes the problem
Any kind of expression is legal after INTERVAL.
2019-01-09 09:11:49 +02:00
a456168fd0 MXS-2248 Add test that reveals problem 2019-01-09 09:11:49 +02:00
d9faea4979 Fix -Wshadow warnings
The cdc_connector.h won't built with -Wshadow if the variable and method
names match.
2019-01-09 09:00:00 +02:00
c0ebf663e3 Make the error message a const char* const
This prevents linker errors if the source files are used directly.
2019-01-09 08:59:49 +02:00
7a7545f8f7 Merge branch '2.2' into 2.3 2019-01-08 15:59:03 +02:00
9cba1bdc37 Update release notes 2019-01-08 15:58:20 +02:00
2895f361d9 MXS-2242 Add change that fixes the problem
A whole slew of missing builtin functions were added, not just the
ones directly relevant for MXS-2242.
2019-01-08 15:55:41 +02:00
f94ddadc18 MXS-2242 Add test that reveals problem 2019-01-08 15:55:41 +02:00
8ab5d79025 Merge branch '2.2' into 2.2.19 2019-01-08 15:55:21 +02:00
d569cff98f try to Fix MXS-2206 (#185)
* try to Fix MXS-2206

* use sort -v

* return empty line
2019-01-08 11:58:35 +02:00
63358fb4c1 Add correct operator to comparison
The clause had a bitwise AND. The end result is likely the same.
2019-01-08 10:18:15 +02:00
5f83b07fc2 MXS-2241: Detect invalid readwritesplit configuration
master_reconnection and disable_sescmd_history are, in practice, mutually
exclusive settings.
2019-01-07 11:06:24 +02:00
0859f3caff Merge branch '2.2' into 2.3 2019-01-07 10:33:34 +02:00
2172c4ca85 MXS-2048: Fix dbfwfilter module command documentation
Fixed the command names.
2019-01-06 13:17:32 +02:00
bc346422fb Add minimal CDC client
Added a minimal CDC client application that uses the CDC connector
library. This is mainly intended for manual testing so it is built using
the accompanying Makefile instead of being a part of the CMake system.
2019-01-06 13:05:42 +02:00
46bea87ff6 MXS-2238: Fix reading of large Avro schemas
The schemas were read incorrectly which resulted in large schemas having
multiple newlines in them.
2019-01-06 13:05:42 +02:00
7b6ae4bc13 Add 2.2.19 release notes
Generated 2.2.9 release notes and added them to the changelog.
2019-01-06 13:05:42 +02:00
a4540b5cee Add note about weightby deprecation
The documentation now states that the parameter was deprecated.
2019-01-06 13:01:37 +02:00
8c437c6440 Fix crash in galeramon
An std::string was assigned a null value which will cause a crash.
2019-01-04 12:00:48 +02:00
2fde4ba1b3 Fix MXS_ABORT_IF_FALSE macro
The macro needs parentheses around the expression, otherwise the negation
is applied in the wrong place.
2019-01-04 11:26:09 +02:00
fe4c848079 Use direct access into strings while canonicalizing
The process of appending to a std::string always includes a size check in
case the internal storage needs to expand. Given that we know a
canonicalized version of a query string is never larger than the original
string and that we pre-allocate enough memory to cope with the worst-case
scenario, the extra logic in std::string::push_back is unnecessary and an
extra cost. Writing directly into the string avoids this cost and improves
the performance.
2019-01-03 21:37:11 +02:00
ad5b244313 Optimize canonicalization code
Switched from default character type functions to ones that use lookup
tables. Eliminated the internal state and replaced with in-place iteration
of the query. Added code to allow single-lookup detection of normal
characters.
2019-01-03 21:37:11 +02:00
c8d4052aec Improve release note generation script
The script can now be run from outside of the directory it is contained
in.
2019-01-03 13:34:10 +02:00
1b0b32cbe8 Update release documentation
Updated the instructions on how releases are made.
2019-01-03 13:07:05 +02:00
87c3b1d25b MXS-2234: Extend persisted config file log message
The log message should now contain enough information to more easily debug
any configuration issues that result from updating the main config file
after runtime changes have been done.

Also fixed the theoretical race condition in detection of persisted
configuration files by only checking for their existence once.
2019-01-03 12:48:30 +02:00
9adbd2f8f0 Cache the local server statistics object
By storing the server statistics object in side the session, the lookup
involved in getting a worker-local value is avoided. Since the lookup is
done multiple times for a single query, it is beneficial to store it in
the session.

As the worker-local value is never deleted, it is safe to store a
reference to it in the session. It is also never updated concurrently so
no atomic operations are necessary.
2019-01-03 09:37:59 +02:00
1fa3b133c7 Make keepalive ping checks more efficient
The code now only checks the need for a keepalive ping once every
keepalive interval. Reduced the number of mxs_clock calls to one so that
all servers use the same value.
2019-01-03 09:37:59 +02:00
5420bf618d Allow systemd notifications from all member processes
By default the notifications are only allowed from the main process or any
child process that systemd finds. When the main process has not yet been
detected by systemd but MaxScale sends a notification, an error is logged
into the system journal. To prevent this, notifications from all member
processes should be allowed.
2019-01-03 09:37:59 +02:00
050ce7f1a3 MXS-2200: Add runtime handling for all global parameters
All global parameters are now handled by the runtime configuration
modification code. The parameters that are trivial to update can now be
updated at runtime. All other global parameters cause a new error message
to be returned stating that the parameter in question cannot be modified
at runtime.

Also updated the list of modifiable parameters in MaxCtrl. This list
should not be stored in MaxCtrl and should be created by MaxScale at
runtime.
2019-01-03 09:37:59 +02:00
88f234fdcd MXS-2214: Fix object names in documentation
The object names now always use a valid and supported form.
2019-01-03 09:37:59 +02:00
ee98900685 MXS-2200: Extend REST API tests
Added test cases for static and unknown global parameters.
2019-01-03 09:37:59 +02:00
26da72a41f Merge branch '2.2' into 2.3 2019-01-03 09:23:16 +02:00