13835 Commits

Author SHA1 Message Date
Markus Mäkelä
f9b1a0a0c4
Merge branch '2.3' into 2.4 2019-07-10 08:17:34 +03:00
Markus Mäkelä
8a176d64aa
MXS-2490: Add direct execution support
Certain MariaDB connectors will use the direct execution for batching
COM_STMT_PREPARE and COM_STMT_EXECUTE execution without waiting for the
COM_STMT_PREPARE to complete. In these cases the COM_STMT_EXECUTE (and
other COM_STMT commands as well) will use the special ID 0xffffffff. When
this is detected, it should be substituted with the ID of the latest
statement that was prepared.
2019-07-09 14:59:52 +03:00
Markus Mäkelä
5aa9daaeea
Improve stack trace printing
The stacktrace now removes leading paths from object files and common
source code prefixes. It also skips the first five frames which are always
inside the stacktrace printing code and the signal handler.
2019-07-09 10:56:08 +03:00
Markus Mäkelä
1b69e659db
Assert DCB ownership in dcb_drain_writeq
This will cause EPOLLOUT events for maxscaled to trigger the assert
immediately if the buffer was placed into the queue by another worker.
2019-07-08 12:37:35 +03:00
Markus Mäkelä
e658dca4fe
Allow rapid reloading of users on startup
This fixes the test failures that stem from users being created right
after maxscale has started. This also should make startups a bit smoother
now that the default value of users_refresh_time has been fixed.
2019-07-08 11:32:16 +03:00
Markus Mäkelä
1c96dc9769
Update download link 2019-07-08 08:17:48 +03:00
Markus Mäkelä
2238faa913
Make response time lock server-specific
There's no global data being modified inside the method call so a instance
level lock is sufficient.
2019-07-07 21:20:28 +03:00
Markus Mäkelä
4d5b9cae9c
MXS-2593: Remove unnecessary hangups
The backend DCBs do not have to send hangups in the close protocol API
method. If the conditions for the hangup were true, the session was
already stopping meaning that the client DCB was already closed.
2019-07-06 08:15:22 +03:00
Markus Mäkelä
e516c11ac5
MXS-2587: Never route stored queries in routeQuery
This could end up in infinite mutual recursion if no responses are
expected. Although this does not happen now that MXS-2587 is fixed, the
code should not even be there.
2019-07-05 14:19:44 +03:00
Markus Mäkelä
7270ff7ac0
Use 10.3 for REST API and MaxCtrl tests 2019-07-05 14:19:44 +03:00
Markus Mäkelä
0261b65529
Fix avrorouter parameters
The two new parameters weren't documented and `server_id` used the wrong
type.
2019-07-05 14:12:59 +03:00
Markus Mäkelä
6a1ef9d21e
Remove declared but not defined methods
Readwritesplit still declared the old methods used to update the
configuration data.
2019-07-05 13:56:17 +03:00
Marko
e45dcb6d8a Merge branch '2.3' into 2.4 2019-07-05 10:39:03 +03:00
Marko
edbbafc2e9 MXS-2502 Fix access denied when connecting to 'information_schema' 2019-07-05 10:37:31 +03:00
Markus Mäkelä
8960d2df8f
Merge branch '2.3' into 2.4 2019-07-04 09:39:52 +03:00
Markus Mäkelä
be8f4fe055
MXS-1901: Route related PS commands to same server
All COM_STMT_SEND_LONG_DATA commands and the COM_STMT_EXECUTE that follows
it must be sent to the same server. This implicitly works for masters but
with multiple slave servers the data could be sent to the wrong server.

By using the code added for MXS-2521, this problem can now be easily
solved by checking what the previous command was.
2019-07-04 09:37:09 +03:00
Johan Wikman
847d673f07 Merge branch '2.3.9' into 2.3 2019-07-04 09:26:47 +03:00
Johan Wikman
c09a54640d Update 2.3.9 release date
And update Jira list as well.
2019-07-04 08:59:43 +03:00
Markus Mäkelä
953dd4098b
MXS-2587: Prevent queries after failed trx replay
If a transaction replay fails, no queries must be routed before the
connection is closed. This could happen if the client received the error
from the replay failure and closes the connection before the fake hangup
generated by the replay failure is processed.
2019-07-04 08:21:16 +03:00
Markus Mäkelä
f36b6492ab
Update current DCB for hangup events
When fake hangup events are delivered via DCBs, the current DCB would not
be updated. This would cause error messages without a session ID which
makes failure analysis harder.
2019-07-04 08:21:16 +03:00
Timofey Turenko
73803fff70 Merge branch '2.4' of github.com:mariadb-corporation/MaxScale into 2.4 2019-07-03 13:08:08 +03:00
Johan Wikman
baf9e4078a MXS-2446 Ensure that the URLs reflects m_nodes_by_id
If code that may remove items from m_nodes_by_id (Clustrix nodes
keyed by id) succeeds, we must update the vector of health check
URLs also in the case that code that _may_ add items to m_nodes_by_id
fails.
2019-07-03 12:42:22 +03:00
Johan Wikman
26a4f0d859 MXS-2446 Provide access to used urls
Makes it possible to later verify that results are for the
urls one expects them to be.
2019-07-03 12:42:22 +03:00
Johan Wikman
1d4d05be6f Add missing documentation link 2019-07-03 12:41:23 +03:00
Markus Mäkelä
2d77a361f2
MXS-2586: Fix users_refresh_time
The default value was not assigned on startup.
2019-07-03 11:15:21 +03:00
Markus Mäkelä
a3bbba0a3d
Update REST API ETag documentation
The ETag docuemntation did not mention what sort of changes triggered ETag
updates.
2019-07-03 10:25:30 +03:00
Markus Mäkelä
760f887566
Skip unnecessary reconfiguration
The coredump configuration needs to be done only if nodes were restored or
if MaxScale was reinstalled.
2019-07-03 09:34:20 +03:00
Markus Mäkelä
02395102ed
Add log message injection to tests
By injecting messages into the maxscale.log from the test, the reader of
the log can easily see the "synchronization" with the test case. This does
affect the test timing so it can only be used to see whether non-timing
related functionality is correct.
2019-07-03 09:34:20 +03:00
Markus Mäkelä
990208d0fd
Enable log_info for stale_slaves
This would help explain any odd test failures.
2019-07-03 09:34:20 +03:00
Markus Mäkelä
9b79b25903
Merge branch '2.3' into 2.4 2019-07-03 09:32:06 +03:00
Markus Mäkelä
5ff52600c9
Merge branch '2.3.9' into 2.3 2019-07-03 09:31:42 +03:00
Markus Mäkelä
66d6ce6fa5
Create /var/lib/maxscale via systemd
Systemd provides the facilities to run commands before startup which can
be used to prevent the problem that fixing MXS-2578 caused: upon upgrading
from 2.3.8 to 2.3.9 the /var/lib/maxscale directory would be removed if it
was empty.
2019-07-03 09:04:46 +03:00
Timofey Turenko
280d620ccc remove spaces from maxscale.cnf in upgrade test 2019-07-03 00:36:19 +03:00
Markus Mäkelä
26ca7a98f8
Merge branch '2.2' into 2.3.9 2019-07-02 13:05:23 +03:00
Andrey Vasilyev
8d91e8e234 Install TCL from the source code only when the system version of the library is older than 8.6.5 2019-07-02 13:03:59 +03:00
Johan Wikman
fc25280e9a Merge branch '2.3' into 2.4 2019-07-02 10:37:04 +03:00
Johan Wikman
1c1b791ddc Merge branch '2.3.9' into 2.3 2019-07-02 10:35:51 +03:00
Johan Wikman
85bb54ce66 Add missing documentation link 2019-07-02 10:31:38 +03:00
Markus Mäkelä
5a6e2f43cf
Merge branch '2.2' into 2.3.9 2019-07-02 10:06:33 +03:00
Johan Wikman
10a9cb3f18 Merge branch '2.3' into 2.4 2019-07-02 09:33:56 +03:00
Johan Wikman
29c530fdcc Update maintenance version of 2.3 2019-07-02 08:56:50 +03:00
Johan Wikman
7d1537a4ca Add release notes and update changelog for 2.3.9 2019-07-02 08:56:12 +03:00
Johan Wikman
cc1bd3db80 Add release notes and update changelog for 2.3.9 2019-07-02 08:54:55 +03:00
Markus Mäkelä
3e85500491
Merge branch '2.3' into 2.4 2019-07-02 08:38:15 +03:00
Markus Mäkelä
8ee54b76d6
Merge branch '2.2' into 2.3 2019-07-02 08:36:37 +03:00
Johan Wikman
493ce86d87 Add release notes and update changelog for 2.3.9 2019-07-02 08:23:43 +03:00
Markus Mäkelä
6b11067690
Lower throttling limit in mxs173_throttle_filter
The test appears to fail when the throttling is unable to keep the QPS
high enough for the test to pass. To reduce the likelihood of this, lower
the limit to 500 QPS.

In theory, the minimum delay of one millisecond in the delayed_call limits
the filter to a maximum QPS of 1000 as each query would wait for at least
a millisecond before being routed. This is yet to be proven but it would
explain why the tests are having a hard time approaching that level of
QPS.
2019-07-01 17:30:03 +03:00
Markus Mäkelä
25d134df9c
Too slow a system isn't a test failure
If testing cannot be reliably performed, the test should be skipped to
minimize unnecessary work that non-deterministic failures cause.
2019-07-01 17:18:22 +03:00
Markus Mäkelä
b3eb5ccc81
Fix run_ctrl_c.sh on newer systems
Systems that no longer support SysV init scripts and the service command
need to use systemctl.
2019-07-01 17:13:09 +03:00
Markus Mäkelä
0b18826fc1
Fix no_password
The test used freed memory.
2019-07-01 16:57:52 +03:00