13212 Commits

Author SHA1 Message Date
Esa Korhonen
87540f0ea0 MXS-3101 Improve proxy protocol header generation
Client connection file descriptor no longer read. The header now
contains the server's address instead of MaxScale's address.
2020-08-20 15:03:19 +03:00
Johan Wikman
606ae6d2b0 MXS-3121 Log stmt being classified in fatal signal handler
This will make it easier to fix classifier related crashes.
2020-08-20 13:32:24 +03:00
Johan Wikman
c5870cbaba MXS-3121 Expose statement currently being classified
Intended to be used from fatal signal handlers. As the statement will
be returned only while classification is in process, if a statement
is returned, it is an indication that the crash was caused by the
classification.
2020-08-20 13:27:55 +03:00
Johan Wikman
bf6ff8a578 MXS-3120 Check whether sqlite SrcList is NULL
According to bug-report it seems that a SrcList can be NULL. This
fixes the immediate problem, but it would be good to know in what
contexts the SrcList can be NULL so that the check could be made
before calling the function instead of checking (possibly
unnecessarily at times) in the function.
2020-08-19 16:37:24 +03:00
Markus Mäkelä
b5fa26e8a6
MXS-3113: Log a message when log rotation is complete
This helps detect that writes to the new log file are working.
2020-08-19 12:15:25 +03:00
Markus Mäkelä
7b7cded1cc
MXS-3115: Don't process files in hidden directories
Hidden directories should be treated the same was as hidden files.
2020-08-19 12:15:25 +03:00
Timofey Turenko
e624cf4ecb revert to original package names with dashes 2020-08-19 11:49:54 +03:00
Timofey Turenko
e387220e25 Add distro code name into debian/control version
'reprepro' tool needs different values in the
debina/control file, version field in order to
make one single repository for all distributions
2020-08-19 01:35:10 +03:00
Markus Mäkelä
9318319b96
Fix build failure with GCC 10.2
GCC is smart enough to detect that the address of a local variable is
returned. Since this appears to be code used for a debug assertion, we can
just return a null pointer.
2020-08-17 13:23:33 +03:00
Esa Korhonen
b31cb20bae MXS-2900 Add parameter checking to tprintf-function 2020-08-13 22:43:03 +03:00
Timofey Turenko
5abdb91e9d Fix openjdk installation check in install_test_build_deps.sh 2020-08-04 12:01:27 +03:00
Timofey Turenko
796fdf4e16 Remane apt_opt to apt_cmd and use it also in install_build_depend.sh 2020-07-29 14:51:32 +03:00
Timofey Turenko
4a53db9483 Fix apt comman line in install_test_build_deps.sh 2020-07-29 14:08:14 +03:00
Timofey Turenko
a83c1f3ab4 Add gnutls-dev to tests build dependecy 2020-07-29 13:35:12 +03:00
Esa Korhonen
08f5174915 MXS-2900 Rename maxscale-system-test directory to system-test
A link with the old directory name is provided.
2020-07-28 15:24:27 +03:00
Esa Korhonen
a253ec8117 MXS-2900 Rename more system tests 2020-07-27 18:49:36 +03:00
Niclas Antti
ffb237628c fix GCC 10 warnings 2020-07-27 10:42:38 +03:00
Timofey Turenko
fa40845e0c Use VM to run tests
In order to avoid host overloading, execution of tests moved also to VM.
VM uses MDBCI wrapper which sends all commands to the host
2020-07-24 14:39:35 +03:00
Markus Mäkelä
39aa129fc5
Fix narrowing conversion warnings on GCC 10.1
Using an unsigned value in a switch with signed case values produced the
error.
2020-07-24 14:23:14 +03:00
Esa Korhonen
f1a6bc37c3 MXS-2900 Rename system tests
Some of the tests have rather non-descriptive names.
2020-07-24 13:42:28 +03:00
Markus Mäkelä
aaec73a8c8
MXS-3089: Close backend on failed session command
This correctly triggers the session command response processing to accept
results from other servers than the current master backend if the session
can continue. If the session cannot continue, it will be stopped
immediately.
2020-07-23 09:26:53 +03:00
Markus Mäkelä
cf1d1178d7
MXS-3087: Fix diagnostic memory leaks
Fixed leak in load_utils.cc and the cache filter. Also changed all
instances of json_object_set with json_object_set_new to make sure it's
only used when the references are to be stolen.
2020-07-22 13:27:36 +03:00
Timofey Turenko
0e5163a3fb Make test dependency install script Non-interactive 2020-07-16 16:10:02 +03:00
Markus Mäkelä
f2a837e2f1
Fix memory leak in throttlefilter
The filter would leak the buffer when it disconnects a client. This fixes
the throttlefilter test if it's run with ASAN or valgrind.
2020-07-15 15:35:12 +03:00
Markus Mäkelä
c4e79f4d3b
Prevent unwanted connection errors
The Connection class used the wrapper function when it could simply call
mysql_real_connect directly. This removes the unconditional error message
that would be printed even when a connection failure was expected.
2020-07-15 13:30:41 +03:00
Markus Mäkelä
fcb78108be
Make mxs548_short_session_change_user lighter
Removed the inserts from the test. They don't make any functional
difference and it only slows the whole system down.

Also reduced the number of threads doing the change user command. This
should reduce the CPU usage of the test.
2020-07-14 09:36:37 +03:00
Markus Mäkelä
268b684c01
Fix mxs2167_extra_port
The test only used legacy startup syntax.
2020-07-14 09:36:37 +03:00
Johan Wikman
64480c8268 Remove obsolete script
set-change-date is much better.
2020-07-10 09:51:46 +03:00
Johan Wikman
2b20b1ba6a Add script for setting MaxScale change date
Simply calls script/set-change-date providing as argument all
MaxScale directories containing files with Change Date.
2020-07-10 09:51:46 +03:00
Markus Mäkelä
c85638052e
Rerun failed tests
This should help stabilize the test set by making sure the test actually
fails twice. This'll still leave the output in the log so that the
problems that only occur on the first run can be eventually fixed.
2020-07-10 09:32:13 +03:00
Markus Mäkelä
af227cd8c5
Enable log_info for maxinfo_sql
This should help figure out why the test would hang.
2020-07-09 13:49:43 +03:00
Markus Mäkelä
6229d79681
Make the fwf on_queries test more robust
By waiting for a known period of time before and during the time window,
we get a higher chance of the test passing even if the system isn't fast.
2020-07-09 13:49:43 +03:00
Markus Mäkelä
f61c7728ab
Fix bug626 with MariaDB 10.4
The test used legacy SQL syntax for updating the password.
2020-07-09 13:49:43 +03:00
Johan Wikman
09ebffbb9e 2.3 Add script for setting change date
This script is capable of setting the change date and not just
updating a specific one.

It looks for " Change Date: .*" in the first 20 lines of file and
replaces whatever follows "Change Date: " with the specified change
date.

If provided with a directory, it will walk the directory hierarchy
and recursively set the change date in all files.
2020-07-09 10:15:45 +03:00
Johan Wikman
93e2aaeaf5 MXS-3031 Ensure backend ssl tests clean up after themselves
Presumably Mariadb_nodes::disable_ssl() should do that, but it
does not. So for the time being we create the default user anew.
2020-07-08 09:32:07 +03:00
Johan Wikman
9955f00bf5 MXS-3031 Add function for resetting users
With this function, a test that changes the default test users
on a node can reset the situation.
2020-07-08 09:31:42 +03:00
Markus Mäkelä
c9badcb09c
Fix installation order of signal handlers
The shutdown signal handlers were installed before the workers were
initialized and weren't removed before the workers were deleted. This
would lead to a debug assertion and an eventual crash when a SIGTERM
signal was received outside of the expected scope.

The proper way to do this is to install the handlers only after the system
is up and running and to disable them as soon as the shutdown process
starts.

This mostly happened with the mxs621_unreadable_cnf test as it seemed to
receive a SIGTERM during the execution of the at-exit handlers.
2020-07-02 10:33:18 +03:00
Markus Mäkelä
637bc6ff6d
Silence test errors about missing cores
`cp` and `ls` complain if the files do not exist, using `test` is more
appropriate to test whether the files exist.
2020-07-02 06:26:35 +03:00
Markus Mäkelä
1756857f5d
Fix galera initialization with 10.4
For whatever reason, galera complains on startup about
wsrep_cluster_address missing even when mysql_install_db is run. By making
sure that we configure it before we initialize the database, the problems
seem to go away.
2020-07-01 15:15:15 +03:00
Johan Wikman
9fb5336615 MXS-2996 Fix classification of "SELECT ... LOCK IN SHARE MODE"
And also of "SELECT ... FOR SHARE"
2020-06-18 10:17:08 +03:00
Johan Wikman
1dd06c3ebc MXS-2996 Add test that reveals problem
SELECT * FROM test LOCK IN SHARE MODE
  SELECT * FROM test FOR SHARE

should be classified as QUERY_TYPE_WRITE.
2020-06-18 10:14:16 +03:00
Johan Wikman
3972e372ae MXS-3041 Fix 'SELECT handler FROM t FOR UPDATE'
Problem was that 'handler' is a keyword. To make it work,
the keyword must be listed as one of those that turns into
an id where it cannot be used as a keyword.
2020-06-18 08:40:22 +03:00
Johan Wikman
f96c8d3a97 MXS-3041 Add test that reveals problem 2020-06-18 08:35:33 +03:00
Johan Wikman
d78aa39765 Update release date 2020-06-05 09:31:45 +03:00
Johan Wikman
ddb4064563 Fix typo in documentation 2020-06-05 09:31:45 +03:00
Johan Wikman
aa11c960b1 2.3.20 Update change date 2020-06-05 09:31:45 +03:00
Johan Wikman
dcf0442127 2.3.20 Add release notes and update change log 2020-06-05 09:31:44 +03:00
Markus Mäkelä
d025f5123e
MXS-3023: Fix ID generator overflow
The result must always be non-negative.
2020-06-04 15:31:17 +03:00
Markus Mäkelä
5380bd65f1
Detect dropped system tables
If a test breaks the system by dropping a system database, the replication
check wouldn't detect it.
2020-06-03 10:39:36 +03:00
Johan Wikman
8f3a1228e6 2.3 Update maintenance release number 2020-06-02 10:50:30 +03:00