[MXS-4812] More than one primary database in a monitor results in errors in MaxScale GUI Created: 2023-10-16  Updated: 2023-10-20  Resolved: 2023-10-20

Status: Closed
Project: MariaDB MaxScale
Component/s: binlogrouter, maxgui
Affects Version/s: 22.08.8, 23.08.1
Fix Version/s: 22.08.9, 23.02.5, 23.08.2

Type: Bug Priority: Major
Reporter: Sören Klein Assignee: Duong Thien Ly
Resolution: Fixed Votes: 0
Labels: regression

Attachments: PNG File Screenshot from 2023-10-16 16-31-07.png     PNG File Screenshot from 2023-10-16 16-31-18.png     PNG File Screenshot from 2023-10-16 16-31-29.png     PNG File Screenshot from 2023-10-16 16-32-04.png     Zip Archive docker-compose-setup-read-readme.zip    
Issue Links:
Relates
relates to MXS-4254 Replication status is not showing lik... Closed
Sprint: MXS-SPRINT-192

 Description   

Hi,

setups where there are multiple primary databases in a single MaxScale monitor break some visual elements. Such a setup is, at least to my knowledge, inevitable when using the binlogrouter component.

My setup looks like this:

  • maria-db-01: The primary database.
  • maria-db-02: Replica, replicates from replication-server.
  • maria-db-03: Replica, replicates from replication-server.
  • replication-server: MaxScale internal server; in front of MaxScale's binlogrouter, replicates from maria-db-01.

A minimal setup with all configurations etc. is attached to this issue, see the readme within the archive.

When I start this setup I experience the following aspects:

  • Replication works.
  • The same GTID is shown across all servers.
  • All MariaDB instances contain the same data.
  • The tooltip over replication-server shows all properties correctly (name, replication_state, seconds_behind_master, slave_io_running, slave_sql_running).
  • The tooltip over maria-db-01 shows replication-server to be healthy (green), but maria-db-02 and maria-db-03 are both orange and show "+Infinitys" replication lag.
  • The tooltip over maria-db-02 and maria-db-03 contains no properties at all (even though replication is healthy and running).
  • Visualizing this setup via "Visualization" -> "Clusters" -> "my-monitor" shows maria-db-01 and replication-server correctly, and the replicas maria-db-02 and maria-db-03 are put in a box titled "rejoinable nodes". Both replicas are not connected to the replication-server instance.

This seems to be a collection of purely visual bugs due to the following aspects:

  • maxctrl show monitors returns correct data.
  • The data returned from the API endpoint at /servers returns correct data.
  • The function getSlaveServerInfo() in maxgui/src/pages/Dashboard/Servers.vue seems to filter out all slave server information where the slave's primary server is different form the monitor's primary server.
  • I have not further analyzed the visualization bug, as this is likely more complicated and also less important to me, but a similar filter seems likely.

Note: This bug seems to be already documented in MXS-4254, although there was another configuration problem which resulted in the ticket's closing.



 Comments   
Comment by Duong Thien Ly [ 2023-10-20 ]

sklein_chargecloud Thank you for a very detailed bug report. This is now fixed.

Comment by Sören Klein [ 2023-10-20 ]

Thank you very much for the fast bugfix

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