7657 Commits

Author SHA1 Message Date
Johan Wikman
5be9a8d7f8 MXS-1730 Add test-case that reveals the problem 2018-03-21 13:25:06 +02:00
Johan Wikman
4413c0cec0 Update version to 2.1.16 2018-03-21 13:23:44 +02:00
Johan Wikman
cb3a6a0e11 Merge branch '2.1.15' into 2.1 2018-03-21 11:23:28 +02:00
Johan Wikman
dadfb68a70 Update 2.1.15 release date. 2018-03-21 11:17:58 +02:00
Markus Mäkelä
02368473f7
Fix failover_mysqlmon
The test should stop MaxScale when it is fixing the replication to prevent
the triggering of the standalone master detection.

Also removed leading spaces from the messages and fixed a possible crash with a
NULL value given to `ssh_node`.
2018-03-20 10:59:08 +02:00
Markus Mäkelä
64ccb67897
Mark crashing tests as failed
If a test generates a core dump, it is marked as a failure.
2018-03-20 10:59:08 +02:00
Johan Wikman
2dacd0c9a4 Add Changelog and Releasenotes to 2.1.15 2018-03-20 09:29:53 +02:00
Markus Mäkelä
2856b91077
Sync slaves before starting the test
Syncing the slaves should guarantee that the table exists on all servers.
2018-03-13 15:17:18 +02:00
Markus Mäkelä
a75ea27a96
Fix memory leak when backend authentication fails
If the backend authentication failed for a user, the buffer containing the
error packet would leak.
2018-03-13 14:32:38 +02:00
Markus Mäkelä
050e27685e
Add various build script documents
Added documents that were left over from the build scripts repo.
2018-03-13 11:37:10 +02:00
Johan Wikman
c5345d34ca MXS-1714 Use local_address also with MaxScale connections
If local address has been specified, then all connections created
using mxs_mysql_real_connect() will use that same local address as
well.

A system test has not been created as our VMs do not have more than
one usable IP-address. Locally it has been verified to work as
expected.
2018-03-12 11:35:46 +02:00
Markus Mäkelä
f54bbdf73b
Fix -Werror=format-truncation= warnings in blr_slave.c
The errors were caused by the fact that the server name
MAX_SERVER_NAME_LEN is 1024 bytes long whereas the buffer was 251 bytes.
2018-03-08 11:28:05 +02:00
Markus Mäkelä
69811d9b19
Cherry-pick: Enable optional use of ASAN
AdressSanitizer is a lightweight memory error detector that instruments at
compile time instead of at execution time. This allows serious memory
errors to be detected without the cost of slowing down the whole program
that often happens when Valgrind is used. It is also easier to enable for
test runs as it is a simple compiler flag.

This is a cherry-pick of fb9b027842a7b65c4826455cd34d88e2f5f28e79 from the
2.2 branch.
2018-03-08 11:28:05 +02:00
Johan Wikman
3d7bf5683e Update 2.1 version 2018-03-07 15:21:02 +02:00
Markus Mäkelä
d6319ec6ee
MXS-1697: Install pkg-config for Debian systems
The build scripts did not install the pkg-config package that the Avro-C
API depends on.
2018-03-07 10:43:07 +02:00
Markus Mäkelä
187cd2cb79
Make install scripts less verbose
We don't need to know the contents of the tarballs on each build.
2018-03-07 10:43:07 +02:00
Markus Mäkelä
7dc844c38a
Update Travis build script
The actual build scripts for MaxScale are now used to prepare the build
environment. This should make the Travis CI build easier to maintain.
2018-03-07 10:43:07 +02:00
Markus Mäkelä
82839abc38
Increase timeouts and add maxadmin output to mxs1476
Increasing the timeout should remove any issues with server lag and
printing the maxadmin output should help diagnose the problem if it still
fails.
2018-03-06 12:47:20 +02:00
Markus Mäkelä
b619fb0707
MXS-1699: Log progress messages at startup
When MaxScale is starting, the loading of the listeners can take a while
if there are a large number of services and users to load. To signal this
to the user, progress messages should be logged after every service is
started.
2018-03-06 12:47:20 +02:00
Johan Wikman
9144ed3448 Update 2.1.14 Release Date 2018-03-06 09:45:41 +02:00
Markus Mäkelä
a0c890cdf6
Add maxadmin output to mxs1678_relay_master
This should make test failure analysis easier.
2018-03-05 14:02:41 +02:00
Markus Mäkelä
cab827b0a4
Fix replication after failover_mysqlmon
When the test finishes and is about to check whether MaxScale is alive,
the servers should be cleared from maintenance mode and the replication
should be fixed. This way the test will clean up after itself.
2018-03-05 14:02:41 +02:00
Markus Mäkelä
65216f5e16
Reset slave when changing master
When the test changes the master, it should reset the slave configuration
on the new master. This way no circular replication topologies are formed
and the monitor can be expected to perform correctly.
2018-03-05 14:02:41 +02:00
Markus Mäkelä
019312c4ee
Cherry-pick: Don't write errors to dummy sessions
If a DCB is closed before a response to the handshake packet is received,
the DCB's session will point to the dummy session. In this case no error
should be written to the DCB.

This is a cherry-pick of commit f53e112bf49766f1cc55516c2d7ee571461d483f
from the 2.2 branch.
2018-03-05 13:58:09 +02:00
Markus Mäkelä
93f3529bb4
MXS-1697: Treat missing libraries as an error
If the avrorouter is being build and the required libraries are not found,
the configuration process should fail. Adding the command to bypass this
into the error message should make it easier to disable this part if it is
not needed.
2018-03-05 13:58:09 +02:00
Markus Mäkelä
f066ba8753
MXS-1693: Accept 'mysql_native_password' as plugin name
When the authenticator loads users, it should also accept users who have
explicitly defined 'mysql_native_password' as their authentication plugin.
2018-03-05 13:58:09 +02:00
Markus Mäkelä
e5934dfb11
Expand SHOW DATABASES warning message
The message now states the impliciations of missing permissions. If the
MaxScale user does not have the permissions to view all databases, it will
only see its own databases.
2018-03-05 13:58:09 +02:00
Timofey Turenko
deae7ea922 add system update before build to build script 2018-03-05 13:17:17 +02:00
Johan Wikman
c78eb298d8 Update ChangeLog and ReleaseNotes of 2.1.14 2018-03-05 12:58:44 +02:00
Johan Wikman
b46c52d65c MXS-1684 Match space+linefeed as linefeed
A linefeed is whitespace, so given the rules

  "\n"+    return '\n'
  {SPACE}  ;

a line consisting of space followed by a linefeed, will be matched
as space and not as a linefeed and hence will cause the parser to
barf.
2018-03-01 17:57:07 +02:00
Johan Wikman
0c206ff428 MXS-1688 Handle ...INTERVAL N <unit>
"INTERVAL N <unit>" is now handled as an expression in itself and
as asuch will cause both statements such as

  "SELECT '2008-12-31 23:59:59' + INTERVAL 1 SECOND;"

and

  "select id from db2.t1 where DATE_ADD("2017-06-15", INTERVAL 10 DAY) < "2017-06-15";"

to be handled correctly. The compare test program contains some
heuristic checking, as the the embedded parser will in all cases
report date manipulation as the use of the add_date_interval()
function.
2018-03-01 17:39:03 +02:00
Johan Wikman
b7cc793c40 MXS-1688 Add test that reveals DATE_ADD problem 2018-03-01 17:39:03 +02:00
Markus Mäkelä
03eb30fbc6
Check SHOW DATABASES privilege on startup
MySQLAuth requires the SHOW DATABASES privilege to see all the databases
so it should be checked that the current user has the permission. A
missing permission will cause errors that are hard to resolve.
2018-02-22 10:06:29 +02:00
Markus Mäkelä
8e31b30d19
MXS-1678: Add test case
Added test case that checks that relay master status is not lost when IO
thread is stopped.
2018-02-21 10:43:12 +02:00
Markus Mäkelä
1ecd791887
MXS-1678: Store master_id even when IO thread is stopped
When the IO thread of a relay master is stopped, the knowledge that it is
not a real master but a relay master is lost. To prevent this loss of
information, the master server's server_id value should always be stored
if it is available.
2018-02-21 09:35:42 +02:00
Markus Mäkelä
f3e00431de
Fix MXS-1418 regression
If a server is removed from a service, readconnroute will not verify that
the server it is connected to is still the same root master. This fixes
the regression of MXS-1418.
2018-02-20 15:35:52 +02:00
Markus Mäkelä
b1300fdb01
Sync slaves after creating new users
After the users in the local_address test are created, the slaves need to
be synced to make sure that users have replicated to all servers.
2018-02-15 14:20:08 +02:00
Markus Mäkelä
1042b861bb
MXS-1669: Fix load average tracking
The output of `show threads` could have a negative historic thread load
average that could be explained by the overflow of the signed 32-bit
integer used to count the number of samples.

The time that each thread started to process an event for a DCB used an
old value that is no longer used. Updating this to DCB::last_read retains
the 2.0 behavior.
2018-02-15 11:18:22 +02:00
Johan Wikman
9b9e7121c3 Merge branch '2.0' into 2.1 2018-02-14 15:43:11 +02:00
Johan Wikman
558fdc1875 MXS-1644 Do not refresh users if max connections is reached
According to MXS-1644 the refreshing of users may cause a crash.
In that particular case, the refreshing is triggered by the
authentication failing due to the user having hit the
'max_user_connection' limit of the server.

That is, refreshing the users in the situation is never going to
change the end-result. With this change, the users will not be
refreshed in that case and hopefully the crash will be avoided.

Note that this is something of a workaround as the crash could not
be repeated and the refreshing of the users should obviously not
ever cause MaxScale to crash.
2018-02-14 13:50:29 +02:00
Johan Wikman
cd1604f915 Merge branch '2.0' into 2.1 2018-02-12 13:44:51 +02:00
Johan Wikman
9b03cf46d1 qc_sqlite and qc_mysqlembedded marked as GA 2018-02-12 13:40:26 +02:00
Timofey Turenko
4714ca7b32 fix tables in README.md 2018-02-09 21:58:10 +02:00
Timofey Turenko
41935fb6d3 add README.md for mdbci operations 2018-02-09 21:58:10 +02:00
Timofey Turenko
2a93cfac8c fix big and big15 templates 2018-02-09 21:58:10 +02:00
Timofey Turenko
a6c97bea2a Update README.md 2018-02-09 21:58:10 +02:00
Timofey Turenko
bdac232811 Update README.md 2018-02-09 21:58:10 +02:00
Timofey Turenko
b1ba30a21e Fix relative links in the README 2018-02-09 21:58:10 +02:00
Timofey Turenko
19b6de6192 Fix README syntax 2018-02-09 21:58:10 +02:00
Timofey Turenko
c7d73f2869 Add README for mdbci build scripts 2018-02-09 21:58:10 +02:00