12256 Commits

Author SHA1 Message Date
Markus Mäkelä
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
Johan Wikman
e386dcba88 Merge branch '2.3.2' into 2.3 2018-12-17 09:33:40 +02:00
Johan Wikman
8b6022ee6d Fix link in 2.3.1 release notes 2018-12-17 09:33:22 +02:00
Johan Wikman
8725205873 Update version in license text 2018-12-17 09:33:22 +02:00
Johan Wikman
e2c52ecd19 Update version in license text 2018-12-17 09:14:36 +02:00
Esa Korhonen
467231480f Merge branch '2.3.2' into 2.3 2018-12-05 13:27:39 +02:00
Esa Korhonen
a6cacbec17 Update MariaDBMonitor documentation
Updates troubleshooting section.
2018-12-04 18:05:38 +02:00
Johan Wikman
1a78f2ffbb Merge branch '2.2' into 2.3 2018-12-04 11:23:31 +02:00
Johan Wikman
87d2a45b20 MXS-2207 Fix the problem in qc_mysqlembedded 2018-12-03 16:03:51 +02:00
Johan Wikman
964180804c MXS-2207 Add test that reveals problem
With qc_mysqlembedded statements like

    SET STATEMENT ... FOR stmt;

are always classified as READ, although their type should be
that of stmt.
2018-12-03 15:59:43 +02:00
Johan Wikman
7872474595 Add missing bug fix to release notes 2018-12-03 15:30:47 +02:00
Johan Wikman
1f495dec99 Merge branch '2.3.2' into 2.3 2018-12-03 15:20:33 +02:00
Johan Wikman
cd95ca7092 Update 2.3.2 release date 2018-12-03 14:51:40 +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
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
Markus Mäkelä
cb878f18b7
Update max_slave_connections documentation
Corrected the default value and added a more detailed explanation of what
the parameter does and how it affects client connections.
2018-11-29 08:47:11 +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
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
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
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
Markus Mäkelä
81937c635b
Fix current command tracking during LDLI
When a LOAD DATA LOCAL INFILE was executed, the client and backend
protocols would update the command byte leading to misinterpretations of
the data.
2018-11-27 12:52:44 +02:00
Markus Mäkelä
636fdca4aa
Update expected outcome of error_messages
The test is expected to fail until MXS-2174 is fixed.
2018-11-27 12:52:43 +02:00
Markus Mäkelä
f87ff431c1
Merge branch '2.2' into 2.3 2018-11-27 11:46:47 +02:00
Johan Wikman
631711f2bf Update maintenance version number 2018-11-27 10:48:18 +02:00
Johan Wikman
4efb2672ff Update 2.2 change log and 2.2.17 release notes 2018-11-27 10:39:14 +02:00
Esa Korhonen
0c77514aaf Update release notes
Explains the default setting of assume_unique_hostnames.
2018-11-27 10:23:36 +02:00
Markus Mäkelä
f41caae5c7
MXS-2175: Fix available_when_donor
If a Galera cluster drops down to a single node, the last node would not
be considered valid. During the failure of the second to last node, the
master would also temporarily lose the master status.

The behavior was changed to always keep the cluster UUID until the cluster
size drops down to zero. This guarantees that the same cluster is used as
long as possible.
2018-11-27 09:22:39 +02:00