1d87b88c50
Avoid using sqlite3_errstr()
...
The function is not in old SQLite3-versions such as the one used by
Centos6.
2019-06-27 10:55:24 +03:00
2ab9aa9a94
Update 2.4.0 Change Date
2019-06-25 09:19:55 +03:00
5528a8e8fb
Merge branch '2.3' into develop
2019-06-19 17:27:57 +03:00
39df829384
Don't kick out super-users when performing rejoin
...
When rejoining a server, preventing writes is not as essential as in switchover.
2019-06-19 17:14:39 +03:00
64d25a48bd
Merge commit 'a60bd376108f71fccf40001c1496f32c11137fe4' into develop
2019-06-18 15:51:17 +03:00
a60bd37610
MXS-2367 Print slave connection errors when replication fails
...
The slave connection I/O-tread stays running if replication credentials are
wrong when connecting to master. This causes a switchover/failover timeout.
When this happens, print the error in the slave connection status as this
clarifies the problem to the user.
2019-06-18 15:02:21 +03:00
648eda9262
Remove deprecated parameters from MariaDBMon
...
Also deprecates an unused parameter.
2019-06-13 14:35:50 +03:00
6ee9736803
Clean up scheduled event handling
...
Removes some duplicated code.
2019-06-13 13:19:48 +03:00
d0e6921604
Improve switchover undo when new master fails
...
Now the monitor properly restores the old master by running promotion code on it.
Also, binlog is disabled when enabling server events.
2019-06-11 17:15:43 +03:00
04fdaf1fdb
MXS-2556 Make config::Configuration aware of its object
...
The name of the object (i.e. the section name from the configuration
file), is now stored in the configuration object for that object.
That way, more contextual and hence morfe user friendly errors and
warnings can be generated.
2019-06-11 11:05:15 +03:00
b49aeae1c8
Avoid using obsolete functions in reset-replication
...
Removes some duplicate functions.
2019-06-10 15:04:25 +03:00
4efa9dbeea
Remove maxscale/alloc.h
...
The remaining contents were moved to maxbase/alloc.h.
2019-06-10 14:11:25 +03:00
fc9ef715bd
Move last MariaDB-Monitor settings inside class
2019-06-07 11:42:21 +03:00
926f0057c2
Move QueryResult-class to a separate file
...
The maxsql/src/mariadb.cc-file contains only general utility functions.
2019-06-07 11:32:46 +03:00
8fa8181009
MXS-2540 Use new conf. mech. in Clustrix monitor
2019-06-05 11:10:28 +03:00
69dea5a81e
MXS-2537 Turn 'cluster_monitor_interval' into duration
2019-06-05 11:02:34 +03:00
60d065473e
MXS-2481 Handle sqlite3 oom error
2019-05-28 12:36:21 +03:00
feae0cda17
MXS-2481 Dont log confusing things
...
At first start there will be no persistent information. No point
in logging that we will not use that information.
2019-05-28 12:36:21 +03:00
8204c5099b
MXS-2481 Ensure directory exists before creating db
2019-05-28 12:36:21 +03:00
a82841333d
Merge branch '2.3' into develop
2019-05-28 10:57:18 +03:00
d128c9a09b
MXS-2504 Kick out super-users from master server during switchover
...
The monitor queries for logged in users with super-privileges and kicks them out to
prevent writes to master. Normal users can stay since their writes are prevented by
read_only. Also, the master-status is removed from the master manually to signal to
routers that no more writes should go to master.
2019-05-27 18:11:46 +03:00
17fa1ce616
Fix galeramon regression
...
The comparisons were done wrong: strcasecmp returns 0 for equal strings.
2019-05-22 10:02:48 +03:00
d0153f6ce3
clustrixmonitor: Add missing include
2019-05-21 12:50:10 +03:00
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
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
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
d2f3e56d0a
MXS-2169 Add 'enforce_simple_topology'-setting
...
Does not add any functionality yet.
2019-05-17 13:46:33 +03:00
c801789ff3
Cleanup monitor running state
2019-05-17 13:34:48 +03:00
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
476dc80bc9
Move settings shared between MariaDBMonitor and MariaDBServer to container
...
Removes the need to communicate these settings via call parameters.
2019-05-10 14:48:41 +03:00
d10c7a4140
Rearrange MariaDB-Monitor settings variables
...
Moves some of the settings to a dedicated container to separate them
from other fields.
2019-05-10 14:48:41 +03:00
a9b1e3a442
Move some Monitor fields to private and protected
...
None of the fields should be publicly writable and some should not even
be writable from derived classes.
2019-05-10 14:48:41 +03:00
418ccf861d
Format routers and monitors
2019-05-10 10:31:12 +03:00
381940ce8c
Merge branch '2.3' into develop
2019-05-09 14:35:44 +03:00
567ad9b8b8
Fix galeramon regression
...
The comparisons were wrong: strcasecmp returns 0 for equal strings.
2019-05-09 12:30:29 +03:00
d3a1f5c51f
MXS-2463 Prefer range loops
...
Also consistently use 'kv' as in key-value as the element name
when the collection looped over is a map.
2019-05-07 10:36:21 +03:00
4cf29bea36
MXS-2463 Rename m_nodes to m_nodes_by_id
...
Makes it obvious it is a map.
2019-05-07 10:36:21 +03:00
3c9ad0e452
MXS-2463 Ignore persisted data if bootstraps have changed
...
If there have been any changes in the bootstrap servers specified
for the Clustrix monitor, then the persistent connection information
is not used.
Otherwise, if the bootstrap server is changed and inaccessible, we
may connect to another cluster than the intended one.
2019-05-07 10:36:21 +03:00
ff33453e1a
MXS-2463 Prepare for another set of queries
...
Persisted information about dynamic nodes must be used only if
the bootrap information has not been changed, as otherwise we risk
using information that is not valid.
2019-05-07 10:36:21 +03:00
6f607e13de
MXS-2446 Do not assume created server exists
...
"Once you eliminate the impossible, whatever remains, no matter
how improbable, must be the truth." Arthur Conan Doyle
Since server objects are never destroyed, currently the only
explanation for the crash described in MXS-2446 is that a server
created at runtime could not, immediately after the creation, be
found using its name.
2019-05-06 12:13:29 +03:00
86b099b487
MXS-2468 When the URLs change, HTTP GET must be cancelled
...
If the nodes change while a multi HTTP GET is in process, the
corresponding delayed called must be cancelled. Otherwise we
eventually would end up attempting to update the state of the
nodes using the wrong result.
2019-05-03 15:00:00 +03:00
3d420dee6f
MXS-2329 Use durations in MariaDB monitor
2019-04-30 13:02:53 +03:00
643514bbe4
Merge branch '2.3' into develop
2019-04-30 12:46:07 +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
1e84742cbb
Remove ndbclustermon
2019-04-24 14:02:18 +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
4186f39616
Merge branch '2.3' into develop
2019-04-23 12:11:09 +03:00
60c1b15d60
MXS-2441: Add slave support to galeramon
...
Slaves that replicate from galeramon now get the Slave status if they are
replicating from a joined Galera node.
2019-04-23 11:57:10 +03:00
a471417150
MXS-1922: Show GTIDs for Galera nodes
...
Galera generates GTIDs even if they are unique across all nodes and it
makes sense to display this.
2019-04-18 12:04:56 +03:00