Group replication of Percona for mysql in Percona forked Orchestrator and original orchestrator was not discovered on the web

Starting with Orchestrator 2.3 version of openark, the DB set of group replication structures can be controlled on the web. (

As noted in faq, Orchestrator does not support failover and Switchover, but it is simply monitorable.

In Orchestrator’s project developed with go, group replication is judged by the function below.
(go > inst > instance_dao.go)

// // PopulateGroupReplicationInformation obtains information about Group Replication for this host as well as other hosts
// // who are members of the same group (if any).
func PopulateGroupReplicationInformation(instance *Instance, db *sql.DB) error {
// // We exclude below hosts with state OFFLINE because they have joined no group yet, so there is no point in getting
// // any group replication information from them
q := `

Both Percona for MySQL and Oracle MySQL can determine Group Replication by the query statements listed in the function above.

However, in the course of executing the PopulateGroupReplicationInformation function, it is coded as follows.

(714 lines based on Orchestrator forked by Percona)

if (instance.IsOracleMySQL() && !instance.IsSmallerMajorVersionByString("8.0") {
err := PopulateGroupReplicationInformation(instance, db)
if err != nil {
goto Cleanup

In the code above, as well as IsOracleMySQL(), If you add Ispercona(), you can see that Group Replication in Percona for MySQL is monitored normally in the Orchestrator web.

Why did the initial Orchestrator configuration only support IsOracleMySQL()?

Hi, this is bad, I’ll create a Jira ticket for this.

1 Like

1 Like