Commit Graph

13232 Commits

Author SHA1 Message Date
75fbcc9393 MXS-2329 Use durations in log_throttling 2019-04-30 13:02:53 +03:00
9fb4116bf5 MXS-2329 Use durations with connection_timeout 2019-04-30 13:02:53 +03:00
638debcdc0 MXS-2329 Allow the restriction of duration units
It's now possible to specify in the config parameter declaration
that the smallest allowed unit is seconds. For parameters whose
granularity is seconds, allowing to specify a duration in
milliseconds would open up a possibility for hard to detect errors.
2019-04-30 13:02:53 +03:00
8a250a8b13 MXS-2329 Make duration misuse harder
Now the desired type must be specified when getting a duration.
The type also dictates how durations without suffixes should be
interpreted.

That removes the need for remembering that to convert a returned
millisecond duration to a second duration.
2019-04-30 13:02:53 +03:00
8bf0e00b1c MXS-2329 Use duration with users_refresh_time 2019-04-30 13:02:53 +03:00
3055e49f5a MXS-2329 Use durations with query_retry_timeout
Also change auth_[connect|read|write]_timeout to be time_t.
2019-04-30 13:02:53 +03:00
92cc31f0c0 MXS-2329 Use durations with auth_[connect|read|write]_timeout 2019-04-30 13:02:53 +03:00
284a5057fb Update version of develop to 2.4.0 2019-04-30 13:02:28 +03:00
643514bbe4 Merge branch '2.3' into develop 2019-04-30 12:46:07 +03:00
dd188962cd MXS-2427 Check all hints when routing
Now considers other routing hints if first one fails. The order is inverted compared
to e.g. namedserver filter settings because of how routing hints are stored. If all hints
are unsuccessful, route to any slave.
2019-04-29 16:49:32 +03:00
ded4050997 Add missing header to test_host_class 2019-04-29 15:59:41 +03:00
1f4ffd14e4 Always use a newer compiler on CentOS
For some reason the previous change was not commited in develop.
2019-04-29 12:46:00 +03:00
b13ffc73ef Alow [en|dis]abling of uncrustify
With

    // *uncrustify-off*

    ...

    // *uncrustify-on*

it is now possible to disable uncrustify for a particular code block.
Comes in handy at times.
2019-04-29 10:42:33 +03:00
3c8d6fc175 Fix Werror=format-overflow warning in bug471 2019-04-27 16:32:34 +03:00
08bd7c99be Add a possibility to run tests under callgrind
Flag 'use_callgrind' make all maxscale-system-test run Maxscale under Valgrind with --tool=callgrind option
2019-04-26 17:30:10 +03:00
ea14331d18 Move DCB owner selection into Listener
The code that selects which worker to assign the DCB to is now completely
in the Listener class. This removes the need to change the ownership of a
DCB after it has been allocated.
2019-04-26 13:18:37 +03:00
510cae2fe0 Allocate DCB on owning thread
The DCB is now fully allocated on the thread that owns it. This guarantees
that the owner is always correct when it is used.

The code in poll_add_dcb still manipulates which worker the DCB is
allocated. This needs to be removed and the detection of special needs
(maxadmin, maxinfo) must be moved into the listener.
2019-04-26 11:40:30 +03:00
dc244342f8 Prevent assignments in assertions
Using the else branch instead of explicitly negating the assertion makes
sure the compiler catches assignments in assertion expressions.
2019-04-26 11:40:30 +03:00
fd51048640 Don't align function parameters
The function parameters in declarations are not aligned.
2019-04-26 11:40:30 +03:00
c5b6693fce Enable struct initializer alignment
Uncrustify 0.68 fixed the addition of extra spaces after the last
argument.
2019-04-26 11:40:30 +03:00
01b1d469a8 MXS-2435 Handle recoverable Clustrix errors
If
- transaction replay is enabled,
- an error is returned and
- the error is one of the recoverable Clustrix errors
we will retry the transaction.

If it succeeds, then the client will not notice anything but
for a short delay.

Note that the error message is looked for irrespective of whether
the backend is Clustrix or not. However, as errors are not common
the price for doing that can probably be ignored.

However, a bigger problem is that explicit knowledge of different
backends should *not* be coded into routers.
2019-04-26 10:54:57 +03:00
d8a9405998 MXS-2435 Refactor error message extracting
Access to the error message is needed in different contexts.
Now the extraction code itself can be shared.
2019-04-26 10:54:57 +03:00
d186244261 Add test for class Host 2019-04-25 15:27:10 +03:00
4947081377 The std::ostringstream was incorrectly cleared in the LOG macro. 2019-04-25 15:24:10 +03:00
fadbc0b1ae Separate Monitor management to its own file
Allows better separation of file local data. Also allows moving monitor-
related code from config_runtime.cc.
2019-04-25 12:32:41 +03:00
07ea6bd9ba MXS-2450: Don't discard history if it's disabled
If the session command history is not enabled, it shouldn't be discarded
when a COM_CHANGE_USER is executed.
2019-04-25 11:49:01 +03:00
7a5f11b752 Fix wrong check for wsrep_ready
wsrep_ready was check for ON/YES/1/true, but it has to be checked for OFF/NO/0/false as we are removing nodes, not joining.
2019-04-25 07:45:09 +03:00
9f7a7e473e Enable galeramon to track wsrep_desync, wsrep_ready, wsrep_sst_donor_rejects_queries and wsrep_reject_queries 2019-04-25 07:45:09 +03:00
3ac117ed1d Merge branch 'develop' of github.com:mariadb-corporation/MaxScale into develop 2019-04-24 22:04:19 +03:00
820ff756a7 Fix test_config2
The static structures referred to non-static data.
2019-04-24 18:01:28 +03:00
f6c6415c4f Add build test deps specific for 2.4 2019-04-24 15:41:15 +03:00
6aedcc085f Remove references to NDB server state 2019-04-24 14:15:56 +03:00
810dc06d5c Document removal of ndbclustermon and mmmon 2019-04-24 14:06:27 +03:00
1e84742cbb Remove ndbclustermon 2019-04-24 14:02:18 +03:00
88a9ca8b68 Document removal of debugcli and telnetd 2019-04-24 14:01:31 +03:00
691dc4d1b6 Remove telnetd and debugcli
The modules were deprecated.
2019-04-24 14:01:31 +03:00
4ad60fa2a2 Merge branch '2.3' into develop 2019-04-24 13:29:04 +03:00
b972d88bba Merge branch '2.2' into 2.3 2019-04-24 12:51:32 +03:00
e331b7f432 Add a generic to_string() function. 2019-04-24 12:39:58 +03:00
8b7b7b4d3f Add a streamable class (Host) that represents an address and port,
or a unix domain socket.
2019-04-24 12:38:04 +03:00
64a8288f66 MXS-2426 Document the change in cluster operation failure handling 2019-04-24 12:37:55 +03:00
75c0ac5323 Move items from MonitorWorker to MonitorWorkerSimple
MonitorWorker only enforces the use of a worker thread but otherwise
does not define how the monitor is implemented.
2019-04-24 11:27:11 +03:00
2bc0b9c875 Don't ignore getcwd return value
The return value should be used.
2019-04-24 11:08:34 +03:00
f8c964163f Merge branch '2.3' of github.com:mariadb-corporation/MaxScale into 2.3 2019-04-23 13:46:53 +03:00
b7e9d8e189 remove maxscale-system-test/cnf/maxscale.cnf.template.replication.one_slave_big as soon as it is generated automatically 2019-04-23 12:33:23 +03:00
0f8b7450b1 Merge branch '2.3' of github.com:mariadb-corporation/MaxScale into 2.3 2019-04-23 12:29:33 +03:00
be7f5ad1c8 remove maxscale-system-test/cnf/maxscale.cnf.template.replication_big as soon as it is generated automatically 2019-04-23 12:28:24 +03:00
a60e3c275c Merge branch '2.3' of github.com:mariadb-corporation/MaxScale into 2.3 2019-04-23 12:24:58 +03:00
4186f39616 Merge branch '2.3' into develop 2019-04-23 12:11:09 +03:00
9e3f0aab5a Extract client address before allocating the DCB
By extracting the address before the session is started, we can refuse the
connection if there are too many connections from that particular host.
2019-04-23 11:57:10 +03:00