Commit Graph

9276 Commits

Author SHA1 Message Date
f0d33a6ead MXS-1560 Manual failover with two good candidates
Not two specific good candidates, but all slaves are assumed
are equally good.
2017-12-12 13:27:57 +02:00
3c2d03fd80 MXS-1559 Add skeleton test implementation 2017-12-12 13:27:57 +02:00
79afaa447e Merge branch '2.1' into 2.2 2017-12-12 13:23:02 +02:00
7ebd487ef3 change cnfs for binlog tests 2017-12-12 12:24:21 +02:00
6485365b3b MXS-1514: Split failover test in two files, add manual version
The same test now has two versions. In the automatic version failover
begins automatically. In the manual version failover is started with
maxadmin. The tests are otherwise identical.
2017-12-12 11:09:50 +02:00
06e16954c4 Add documentation for switchover, failover and rejoin 2017-12-12 10:44:13 +02:00
757ab3fd47 Increase mxs431 timeouts
The first timeouts don't appear to relate to the actual test but to
preparing it. Due to this, they can be increased by a great amount.
2017-12-12 08:53:19 +02:00
4b9bb9e65f Assign service pointer in BLR DCBs
The DCBs that were manually allocated by the binlogrouter were not
assigned the service pointers.
2017-12-12 08:47:02 +02:00
6b05d07c79 Update mxs431
Removed excessive output, tuned timeouts and removed unnecessary heap
allocation of TestConnections.
2017-12-12 08:47:02 +02:00
45ba9b3730 remove sha1check from *gtid tests due to lack of binlog files in the Maxscale cache 2017-12-11 16:12:42 +02:00
257112dc27 swithch to maxscale-system-test dir in the proper way before running test 2017-12-11 15:16:33 +02:00
66be882ae0 Don't reload users for dummy sessions
The service for a dummy session will be NULL. If authentication fails for
a dummy session, then no service level actions should be taken.

Only the binlogrouter can trigger authentication failure with a dummy
session as it creates connections before the service itself has started.
2017-12-11 12:31:40 +02:00
357eb67a84 Add missing configuration file for mxs1509
The test configuration file was not added to git.
2017-12-11 12:31:40 +02:00
6803ca2efc Fix crash in mxs361
The test crashed as it used the wrong result set field.
2017-12-11 12:31:40 +02:00
821d21dafb remove unnecessary 'cd' in run_test_snapsht (#148)
remove unnecessary 'cd' in run_test_snapshot
2017-12-11 12:17:13 +02:00
1ae05f0487 MXS-1514: Fix failover test
Current failover code better detects weird situations and refuses to work in one.
The test server slaves have events far ahead of the master in their binlogs,
causing the failover to stop. To fix this, slave binlogs are now deleted when
a test begins.
2017-12-08 12:39:47 +02:00
b29a8eb4f8 MXS-1513: Flush logs before tables during switchover_demote_master
In this order, the new binary log file will have 1 event instead of 0.
In total, only 1 event is added.
2017-12-08 12:28:50 +02:00
3c88bf1ec6 refactored tests (#147) 2017-12-08 12:23:04 +02:00
0ba7bdca81 Update connector-c to 3.0.2 for tests
Updated connector to same version that is used in MaxScale.
2017-12-08 10:39:49 +02:00
ca458cdce8 Update bug-list 2017-12-07 14:59:33 +02:00
8ed1ff67c2 Fix avro regression
The fact whether a query explicitly defined a query was ignored by the
statement parsing function and it always assumed the database was
explicitly defined. This caused the TABLE keyword in a CREATE TABLE
statement to be falsely identified as the current database.
2017-12-07 13:19:06 +02:00
7a6d00e807 Cherry-pick test fixes from 2.2
This is a partial cherry-pick of 9f11fdd2c122c9b30548c7ab55df8dda643ec659.

Use larger BLOB type for mxs812_1, the inserted value exceeds the normal
BLOB size.

Add a baseline check into bulk_insert to verify that direct connections
work (at the moment they don't, needs an investigation).

Modified avro_alter to prevent data type conversion errors.
2017-12-07 13:19:06 +02:00
a6a37969e9 fix condition for named test (#146) 2017-12-07 11:57:11 +02:00
c6daf8c26b MXS-1513: More accurate error messages
The failed query is now printed.
2017-12-07 10:54:30 +02:00
8ddd16186e Add .gitignore to maxscale-system-test 2017-12-07 10:44:54 +02:00
b2bc087508 MXS-1491: Print failcount
Failcount is now printed in "show monitors". Also, when master goes down
but failover does not yet happen because failcount > 1, a message is
logged.
2017-12-07 10:05:45 +02:00
50ae8b3826 remove scrit_dir definition from set_env.sh 2017-12-05 15:07:58 +02:00
eda700e785 Don't use sqlite3_errstr
The function is not defined in older versions.
2017-12-05 13:49:00 +02:00
e1d774f9b3 fix set_env.sh 2017-12-05 13:22:40 +02:00
55f6930e5f MXS-1530: documentation update
MXS-1530: documentation update for send_slave_heartbeat and new binlog
events in 10.2
2017-12-05 11:19:37 +01:00
97d41e6ca0 MXS-1555: Never explicitly assign the readqueue
The readqueue should never be explicitly assigned and should only ever be
appended to. This guarantees that the packets are read and processed in
the correct order.

Also removed an unused function that deals with the readqueue
manipulation.
2017-12-05 12:09:52 +02:00
6f185ff5db MXS-1555: Fix persistent pool qualification
When packets were routed individually, the qualification for the
persistent pool was done before the current command was updated. In
addition to this, the previous commit doesn't seem like it can even build.
2017-12-05 12:09:52 +02:00
0a23d526ff fix check for 'service' command in the upgrade test 2017-12-05 11:19:47 +02:00
9f11fdd2c1 Fix test failures
Use larger BLOB type for mxs812_1, the inserted value exceeds the normal
BLOB size.

Add a baseline check into bulk_insert to verify that direct connections
work (at the moment they don't, needs an investigation).

Updated parameter names in failover_mysqlmon_mrm.

Modified avro_alter to prevent data type conversion errors.
2017-12-05 09:43:06 +02:00
c03ce7ac7f Use correct database name for SQLite
The :memory: database was misspelled as :memory without the trailing
colon. This caused an actual on-disk database to be created instead of an
in-memory one.
2017-12-05 09:43:06 +02:00
ba02ffb0db Move resource.cc internals into a anonymous namespace
All internal code is now inside an anonymous namespace to prevent their
use outside of the compilation unit.

Also fixed the wrong return type of ResourceWatcher::etag.
2017-12-05 09:43:06 +02:00
08689d3bb2 MXS-1539: Execute all REST API commands in a worker thread
Executing the commands inside a worker thread allows further improvements
to job queuing but mainly it fixes the problem of loading users when
listeners are allocated at runtime.

When a runtime listener was being created, it was allocated in the admin
thread whereas the listeners created at startup were allocated in the
"main" thread. This caused a minor difference in how administrative
functions were handled by the REST API and MaxAdmin. The only real problem
is that listener allocation depends on being done inside a worker thread
as it lazily initializes some resources.
2017-12-05 09:43:06 +02:00
74ae3d9ff3 MXS-1539: Actually assign the allocated member pointer
The memory for the rate limit struct was allocated but it was not assigned
for the service. Also corrected a false debug assertion in
service_refresh_users.
2017-12-05 09:43:05 +02:00
a2d275aca3 MXS-1539: Make refresh rate limitations thread-specific
The refresh rate limitations are now also thread-specific. This is
required when the authentication data is partitioned on a per thread
basis.
2017-12-05 09:43:05 +02:00
4194c1c558 MXS-1539: Preliminary implementation of thread-local user cache
The thread-local user cache removes most of the cross-thread communication
from the user authentication at the cost of increased memory use and extra
network usage when users are loaded.
2017-12-05 09:43:05 +02:00
513220805b MXS-1539: Remove useless handles
The client handle was never used.
2017-12-05 09:43:05 +02:00
f45a011dbe add MDBCI test scripts (#145) 2017-12-05 00:30:30 +02:00
c8b6838bce MXS-1555: Fix statement tracking for readwritesplit
The statement tracking was given the same buffer multiple times when a
large packet was spread across multiple buffers when a router with
RCAP_TYPE_STMT_INPUT was present.

The command tracking packet processing is redundant for routers that
require RCAP_TYPE_STMT as the same processing is done later when the
buffer is split into packets and routed. By using the split packets, the
protocol module can simplify the command tracking by a great deal for most
routers.
2017-12-04 14:49:13 +02:00
277ece53d0 Add assertion function to TestConnections
The TestConnections::assert behaves much like the normal assert function
by simply inverting the check for add_result.
2017-12-04 14:49:13 +02:00
046ed5c93d MXS-1513: mysql_mon.cc formatting changes
Ran astyle, cut some long lines.
2017-12-04 13:53:16 +02:00
c0ab80e459 MXS-1513: Cleanup some messages, change function names
No real functionality changes.
2017-12-04 12:53:09 +02:00
74e781a3c3 Update 2.1.12 ChangeLog, Upgrading and Release Notes 2017-12-04 11:50:17 +02:00
9addf93a08 Update 2.1 version number to 2.1.12 2017-12-04 11:43:14 +02:00
45834a89b5 MXS-1533: Rename "auto_join" to "auto_rejoin" 2017-12-04 09:59:29 +02:00
8084491d53 Fix build failure with GCC7
The format checks in GCC7 reported truncation in a snprintf call.
2017-12-04 09:56:50 +02:00