13432 Commits

Author SHA1 Message Date
Markus Mäkelä
b6b0a69440
Fix parameter option overlap
All duration parameters behaved as if they were deprecated due to the bits
overlapping.
2019-05-22 12:25:06 +03:00
Markus Mäkelä
85a0cdf46c
Fix runtime listener creation
The "default" special keywords weren't removed.
2019-05-22 10:02:48 +03:00
Markus Mäkelä
17fa1ce616
Fix galeramon regression
The comparisons were done wrong: strcasecmp returns 0 for equal strings.
2019-05-22 10:02:48 +03:00
Markus Mäkelä
e545e2ac5c
Merge branch '2.3' into develop 2019-05-22 10:02:27 +03:00
Markus Mäkelä
365efb9d3a
Ignore SIGHUP termination in ssh_node
Sometimes the command appears to complete and terminate with a SIGHUP
instead of the proper return value.
2019-05-22 09:56:35 +03:00
Marko
af92fef510 MXS-2477 Update schemarouter documentation 2019-05-21 13:57:32 +03:00
Marko
7893c120a9 MXS-2477 Change schemarouter ignore_databases parameters to ignore_tables
With the table level sharding parameter is used to ignore tables not
databases.
2019-05-21 13:48:17 +03:00
Markus Mäkelä
b294acf276
MXS-2496: Fix SHOW DATABASES grant check
The code expected that the grant was given to the actual user, not a role.
2019-05-21 13:43:51 +03:00
Markus Mäkelä
b04415d8da
Fix use of gwbuf_length in mxs::Buffer
Backend should use empty() instead of length() to see if the buffer is
empty. The length of a buffer should always be valid to call, even on
empty buffers.
2019-05-21 13:15:20 +03:00
Markus Mäkelä
0c19d1ea03
Fix debug assertion in mysql_backend
The backend read function used a NULL GWBUF with gwbuf_length.
2019-05-21 13:15:20 +03:00
Markus Mäkelä
c4fff21909
Fix gwbuf_apped assertion on writeq drain
The DCB writeq would be the tail pointer and it would be NULL.
2019-05-21 13:15:20 +03:00
Markus Mäkelä
6667dbed18
Add missing HEAVY label to big tests 2019-05-21 13:15:20 +03:00
Johan Wikman
d0153f6ce3 clustrixmonitor: Add missing include 2019-05-21 12:50:10 +03:00
Esa Korhonen
0af1f6e690 Merge branch '2.3' into develop 2019-05-21 11:18:40 +03:00
Esa Korhonen
cf46004bd8 Make the servers-array in Monitor private
This prevents derived classes from modifying the array directly,
which would be unsafe.
2019-05-21 10:58:24 +03:00
Johan Wikman
6317a86c69 MXS-2495 No nulls for GWBUF_IS_CONTIGUOUS()
The macro GWBUF_IS_CONTIGOUS() and the actual implementation
gwbuf_is_contiguous() can only be called with a non-NULL pointer.
2019-05-21 10:52:34 +03:00
Markus Mäkelä
68ad51bc52
MXS-2483: Address review comments 2019-05-20 15:46:53 +03:00
Markus Mäkelä
08bb5d009d
MXS-2483: Make some SSLContext methods const
The serialization and opening of a new SSL session can be const.
2019-05-20 15:46:53 +03:00
Markus Mäkelä
76399200f4
Fix assertion on client SSL read
When SSL is enabled, the protocol seems to get zero byte reads which
result in a null GWBUF being passed to gwbuf_length.
2019-05-20 15:46:52 +03:00
Markus Mäkelä
e5a49a2f7b
MXS-2483: Take SSLContext into use in binlogrouter 2019-05-20 15:45:19 +03:00
Markus Mäkelä
c78e907da0
MXS-2483: Minor SSL usage cleanup
Changed getter function return values to std::string, converted
MXS_CONFIG_PARAMETER::set_from_list to take std::strings instead of const
char pointers.
2019-05-20 15:45:19 +03:00
Markus Mäkelä
82add11e86
MXS-2483: Take SSLContext into use
SSLContext is now used everywhere except the binlogrouter which still
allocates the contexts itself. Fixing the binlogrouter's misuse of
internal structures is a rather large undertaking and for this reason the
SSLContext will be taken into use there in a separate commit.
2019-05-20 15:45:18 +03:00
Markus Mäkelä
73796be9d6
MXS-2483: Make SSLContext a C++ class
The class now encapsulates all the functionality that is related to
setting up a SSL context.
2019-05-20 15:45:18 +03:00
Markus Mäkelä
c21558315b
Fix debug assertion with SSL connections
The code assumed gwbuf_length would accept null buffers.
2019-05-20 15:45:18 +03:00
Markus Mäkelä
1197bd40db
MXS-2483: Move unwanted SSL code to mysql_client.cc
The code was only used by mysql_client.cc and should therefore be located
in it.
2019-05-20 15:45:18 +03:00
Markus Mäkelä
cab336ed89
MXS-2483: Rename SSL_LISTENER to mxs::SSLContext 2019-05-20 15:45:18 +03:00
Esa Korhonen
bb706394f6 MXS-2473 Simplify regular expression settings documentation
The settings "match", "exclude" and "options" are now explained once
in the general documentation. The individual filter documentation refers
to the general explanation.
2019-05-20 11:18:03 +03:00
Esa Korhonen
650230455a MXS-2169 Allow unsafe failover when 'enforce_simple_topology' is on
If gtid of master is unknown (as is typical when master is down when MaxScale
starts) the domain id is guessed from the slaves instead. This is usually
safe.
2019-05-20 10:43:54 +03:00
Johan Wikman
0f714e9ad4 MXS-2495 Cleanup GWBUF interface
All GWBUF macros that address a single link in a chain are now
simple wrappers for equivalent gwbuf_link-functions.

Next step is to drop the macros and replace their use with calls
to the functions.
2019-05-20 09:57:37 +03:00
Marko
d1affba34d MXS-2480 Add log message about opened SQLite database 2019-05-20 09:11:58 +03:00
Marko
004e8e638f MXS-2480 Fix creating of the in memory sqlite3 databases in PAMAuth
SQLITE_OPEN_URI flag was missing causing the databases to be created in
disk instead of in memory. Also added info level log message from created
database in clustrixmonitor.
2019-05-20 09:11:58 +03:00
Niclas Antti
b212307fea MXS-2485 PacketTracker utility class.
Several TODOs in PacketTracker.
2019-05-19 18:30:27 +03:00
Markus Mäkelä
29e5af1ded
Move router limitations to router documentation
This way the limitations are easier to find and are consistent across the
modules.
2019-05-17 14:44:49 +03:00
Markus Mäkelä
24ca503b0f
Document transaction_replay_attempts
Also added the new readwritesplit parameters to the 2.4.0 release notes.
2019-05-17 14:44:12 +03:00
Markus Mäkelä
5828061321
Merge branch '2.3' into develop 2019-05-17 14:39:30 +03:00
Johan Wikman
a6c5e880c1 MXS-2470 Validate GWBUFs
A GWBUF given to any gwbuf-function:

- Must not be NULL. Exceptions are gwbuf_free() and gwbuf_append(),
  in analogy with free() and realloc() respectively.
- Must be the head of a chain.
- Must be owned by the calling thread.
2019-05-17 14:37:38 +03:00
Johan Wikman
6cd86051de MXS-2470 Invalidate tail pointers
Although not made unambiguously clear, it is *ONLY* allowed to
manipulate GWBUFs that are the first link of a GWBUF chain (that
may consist of just one link).

With this change, in debug mode the tail pointer of intermediate
links is invalidated so that an attempt to use an intermediate
link is likely to cause a crash.
2019-05-17 14:37:38 +03:00
Markus Mäkelä
96a477ec89
MXS-2490: Send error to client on unknown PS handle
If a client requests an unknown binary protocol prepared statement handle,
a custom error shows the actual ID used instead of the "empty" ID of 0
that the backend sends.
2019-05-17 14:13:44 +03:00
Markus Mäkelä
f94355770f
Merge branch '2.2' into 2.3 2019-05-17 14:10:28 +03:00
Esa Korhonen
4ee30f5c52 MXS-2169 Allow a downed server to be selected as topology master
This is required for the case when MaxScale is started when the master is
already down.
2019-05-17 13:46:33 +03:00
Esa Korhonen
d2f3e56d0a MXS-2169 Add 'enforce_simple_topology'-setting
Does not add any functionality yet.
2019-05-17 13:46:33 +03:00
Esa Korhonen
c801789ff3 Cleanup monitor running state 2019-05-17 13:34:48 +03:00
Esa Korhonen
08b4c26652 Monitor types and fields cleanup
Moves some enums to class enums. Moves some free functions to class methods.
2019-05-17 13:34:48 +03:00
Esa Korhonen
f86f2c7688 Move remaining monitor status print functions inside class 2019-05-17 13:31:20 +03:00
Markus Mäkelä
bf63698991
MXS-2464: Bring back the runtime query queue check
The code that checked that only non-empty queries are stored in the query
queue was left out when the query queue fix was backported to 2.3. Since
MXS-2464 is caused by a still unknown bug, the runtime check should help
figure out in which cases the problem occurs.
2019-05-17 13:03:03 +03:00
Timofey Turenko
ca682a5b1c Merge branch '2.2' of github.com:mariadb-corporation/MaxScale into 2.2 2019-05-17 09:40:07 +03:00
Timofey Turenko
677023a18f Move version pronting from call_mdcbi() directly to TestConnectios()
mdbci call can heppen before maxsales object creation and segfault hapens
To avoid it call of ssh for 'maxscale --version-full' is moved to the end
of Testconnections constructor
2019-05-16 14:36:37 +03:00
Johan Wikman
0a6c94d77b Merge branch '2.3' into develop 2019-05-16 10:55:19 +03:00
Johan Wikman
1c820f6ae3 Merge branch '2.3.7' into 2.3 2019-05-16 10:55:02 +03:00
Johan Wikman
1dbe599b2a Update 2.3.7 release date
Also remove the MXS-2475 'Fix mxs1980_blr_galera_server_ids_' "bug"
that was changed into a task as it has no impact on users of MaxScale.
2019-05-16 10:47:46 +03:00