[MXS-2228] GTID values not updated if only slaves are present Created: 2018-12-26  Updated: 2020-08-25  Resolved: 2019-01-18

Status: Closed
Project: MariaDB MaxScale
Component/s: mariadbmon
Affects Version/s: 2.2.18
Fix Version/s: 2.3.0

Type: Bug Priority: Major
Reporter: markus makela Assignee: Esa Korhonen
Resolution: Not a Bug Votes: 1
Labels: None
Environment:

Reproduced with MariaDB 10.1.36 on docker



 Description   

When MaxScale is configured to monitor the last two slaves (S2 and S3) of a four node chained cluster:

M <- S1 <- S2 <- S3

The GTID values in the maxctrl list servers are not shown when the slave servers have read-only on. If read-only is not enabled, S2 is labeled as the master and the GTIDs are updated.

This is caused by the requirement to know the master's domain ID before the GTID update is done (line 1814 in mariadbmon.cc). By unconditionally updating the GTID positions of the servers, the GTIDs are updated correctly even when only slaves are being monitored.

Reproduced with this configuration

[server3]
type=server
address=127.0.0.1
port=3002
protocol=MariaDBBackend
 
[server4]
type=server
address=127.0.0.1
port=3003
protocol=MariaDBBackend
 
[MariaDB-Monitor]
type=monitor
module=mariadbmon
servers=server3,server4
user=maxuser
password=maxpwd
monitor_interval=2000
 
[CLI]
type=service
router=cli
 
[CLI-Listener]
type=listener
service=CLI
protocol=maxscaled
socket=default



 Comments   
Comment by Esa Korhonen [ 2019-01-18 ]

This is by design in 2.2 In 2.3, the GTID handling is improved and the gtid-values fetched and displayed regardless of server status.

Generated at Thu Feb 08 04:12:36 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.