12279 Commits

Author SHA1 Message Date
Esa Korhonen
760f2ff34c Move alloc.cc to maxbase
Only renames the functions. Macro names are left as is to keep the diff
small.
2018-12-03 10:20:45 +02:00
Esa Korhonen
0c7e737eb7 Move some mysql/mariadb utilities to maxutils
Can be used in system tests later on.
2018-11-30 13:03:37 +02:00
Esa Korhonen
a6fe6a0463 Delete internal/worker.h
Was unused.
2018-11-30 12:22:51 +02:00
Markus Mäkelä
01e9f71af1
MXS-2197: Make SERV_LISTENER a C++ class
The class is still mostly the same as the old C version but it now uses
std::string instead of char pointers. Changed configuration default values
so that the parameters passed to the listener allocation are always valid.
2018-11-30 12:15:57 +02:00
Markus Mäkelä
77585bdb8c
MXS-2197: Make config.h and service.h C++ headers
This is the first step into converting the other headers into C++.
2018-11-30 12:15:57 +02:00
Markus Mäkelä
fb533df22e
MXS-2197: Compile all cache parts as C++
This is required if all headers are converted into C++ as it includes
MaxScale headers.
2018-11-30 12:15:57 +02:00
Markus Mäkelä
cc52ffe768
MXS-2197: Remove C examples
The examples are obsolete.
2018-11-30 12:15:57 +02:00
Esa Korhonen
3cb3676f3e Clean up CCRFilter
Rearranges code, renames fields, uses string instead of const char etc.
2018-11-30 12:12:21 +02:00
Esa Korhonen
7d4f0483a9 Use filter template in CCRFilter
Minimal changes for now, cleanup in next commit.
2018-11-30 12:12:21 +02:00
Markus Mäkelä
d07bc9cd7c
Merge branch '2.3' into develop 2018-11-30 12:06:11 +02:00
Markus Mäkelä
6f934cb9d4
Merge branch '2.3.2' into 2.3 2018-11-30 12:05:29 +02:00
Markus Mäkelä
95d8ee9305
Extend maxctrl system test
The test now executes all commands present in MaxCtrl.
2018-11-30 12:05:14 +02:00
Esa Korhonen
17d46d9166 Compile maxkeys and maxpasswd as C++ 2018-11-30 10:59:32 +02:00
Esa Korhonen
a1e1ac0012 Move string_printf to maxbase
Can be used in tests.
2018-11-29 12:21:40 +02:00
Markus Mäkelä
1126c687a4
Fix alloc-dealloc mismatch in qc_classify_as_json
The deleter for std::unique_ptr<GWBUF> was not included in that file which
caused it to be deleted with the default deleter. The same should apply to
std::unique_ptr<json_t> as well.
2018-11-29 11:25:28 +02:00
Johan Wikman
9b571566aa Fix crash in maxadmin show filter 2018-11-28 19:34:18 +02:00
Markus Mäkelä
7331549915 MXS-2188: Update target table in prepare_table
Passing the target table and create to the prepare_table function allows
the converter to update the internal variables.
2018-11-28 19:32:52 +02:00
Markus Mäkelä
1802151c62 Fix blr server protocol name
The server that the binlogrouter creates used the old protocol name that
caused a confusing deprecation warning.
2018-11-28 19:32:31 +02:00
Markus Mäkelä
3047b8b4cf Fix dependency installation script
The script generates files owned by root so it needs to be removed with
sudo. As the removal of the directory is the last command, its failure
causes the script to fail.
2018-11-28 19:32:31 +02:00
Markus Mäkelä
2dc6718d47 MXS-2188: Update target table in prepare_table
Passing the target table and create to the prepare_table function allows
the converter to update the internal variables.
2018-11-28 19:21:59 +02:00
Markus Mäkelä
2eee524eef Fix blr server protocol name
The server that the binlogrouter creates used the old protocol name that
caused a confusing deprecation warning.
2018-11-28 19:21:59 +02:00
Markus Mäkelä
70c8942a62 Fix dependency installation script
The script generates files owned by root so it needs to be removed with
sudo. As the removal of the directory is the last command, its failure
causes the script to fail.
2018-11-28 19:21:58 +02:00
Johan Wikman
dbe9e0c471 MXS-2163 Some minor refactoring
- Name constants and functions consistently.
- Factor out common functionality.
- Address review comments.
2018-11-28 15:27:23 +02:00
Johan Wikman
55a39268c6 MXS-2163 Make MariaDBMon recognize Clustrix
To allow MariaDBMon to be used with Clustrix we need to handle
Clustrix separately as its apparent version is 5.0.45, which is
lower than what MariaDBMon supports. Further, we must ensure that
Clustrix does not query the slave status as there are no slaves
in the M/S sense in a Clustrix cluster.

NOTE: Once there is a specific Clustrix monitor, this code should
be removed.
2018-11-28 15:27:23 +02:00
Johan Wikman
a4d073ec56 MXS-2163 If clustrix do not "use mysql" 2018-11-28 15:27:23 +02:00
Johan Wikman
31fdf37555 MXS-2163 Add Clustrix users query 2018-11-28 15:27:23 +02:00
Johan Wikman
194e751fb2 MXS-2163 Add function for checking Clustrix table permissions 2018-11-28 15:27:23 +02:00
Johan Wikman
79db52c30e MXS-2163 Factor out table permission check
In the case of Clustrix the check must target different tables,
so a separate function will then be provided for that.
2018-11-28 15:27:23 +02:00
Johan Wikman
2b64ce98cc Merge branch '2.3' into develop 2018-11-28 15:27:00 +02:00
Johan Wikman
0c973c1481 Update maintenance version 2018-11-28 14:39:15 +02:00
Johan Wikman
8f0a85fd46 2.3.2 is GA 2018-11-28 14:34:54 +02:00
Johan Wikman
2b25f8522f Update 2.3 changelog and 2.3.2 release notes 2018-11-28 14:26:15 +02:00
Esa Korhonen
f9a5a9a38d Merge branch '2.3' into develop 2018-11-28 13:12:27 +02:00
Esa Korhonen
1d91895f41 Fix switchover_auto and rejoin_bad tests
Increased some timeouts which were a bit too short in some cases. Cleaned up
the tests too.
2018-11-28 13:08:49 +02:00
Johan Wikman
76c82134a1 Merge branch '2.3' into develop 2018-11-28 11:31:09 +02:00
Johan Wikman
cf66cc6968 Merge branch '2.2' into 2.3 2018-11-28 11:27:44 +02:00
Johan Wikman
590e489be0 Merge branch '2.2.17' into 2.2 2018-11-28 11:23:47 +02:00
Johan Wikman
b3a425c048 Update 2.2.17 release date 2018-11-28 11:07:06 +02:00
Esa Korhonen
c92e485b3b Update table of contents in configuration guide
The file should be broken into smaller pieces.
2018-11-28 10:13:59 +02:00
Markus Mäkelä
6451b1f21a
MXS-2183: Fix memory leaks
Under heavy load some of the basic network operations could fail which led
to some of the allocated memory to leak.

Also the backend protocol never freed the current protocol command if it
was not completed. This would happen if a user executed a session command
as the first command but backend authentication would fail.
2018-11-28 02:03:00 +02:00
Markus Mäkelä
24d1876ed4
Initialize memory in password hashing
The authentication code did not initialize one of the buffers used to
calculate the password hashes. This resulted in the use of uninitialized
memory when the user provided no password.
2018-11-28 00:15:57 +02:00
Markus Mäkelä
73aaa3c981
Use failcount=1 in keepalived_masterdown
This speeds up the test and most possibly fixes it.
2018-11-27 12:52:45 +02:00
Markus Mäkelä
64ca8d4aaa
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.
2018-11-27 12:52:45 +02:00
Markus Mäkelä
da83551493
MXS-2189: Prevent unwanted trx replay
When a transaction is being executed on a slave and the master fails, the
transaction replay would start.
2018-11-27 12:52:45 +02:00
Markus Mäkelä
c372bd8985
Install dependencies in a temporary directory
Doing the dependency installation in a temporary directory prevents the
pollution of the current working directory.
2018-11-27 12:52:45 +02:00
Markus Mäkelä
a15aab610a
MXS-2187: Add test case
The test checks that a single transaction can survive multiple master
failovers.
2018-11-27 12:52:45 +02:00
Markus Mäkelä
05c9aea04d
MXS-2186: Make SHOW DATABASES a read
Since SHOW TABLES is a read, SHOW DATABASES should be one as well.
2018-11-27 12:52:44 +02:00
Markus Mäkelä
1abcbd64bd
MXS-2187: Allow multiple transaction retries
By resetting the replay state the transaction replay can start again on a
new server. This allows the replay process work when a master server is
shutting down.
2018-11-27 12:52:44 +02:00
Markus Mäkelä
e6325d39fb
Delay initial transaction replay
By delaying the replay for a second, we give the monitor a small chance to
adap to master failures. It'll also prevent rapid re-querying if multiple
transaction replays are supported.
2018-11-27 12:52:44 +02:00
Markus Mäkelä
851793cb86
Fix transaction replay debug assertion
A transaction that just completed will go through the start_trx_replay
function as from the client protocol's point of view the transaction is
still open. The debug assertion did not take this into account and would
fail if a successful commit was the last thing done on master that failed.

Also fixed the formatting.
2018-11-27 12:52:44 +02:00