Skip to content

MySQL persistence: support multi-host connectAddr and/or SRV-based endpoint discovery (no LB/VIP environments) #10171

Description

@verma-divyanshu-git

Description

We are running Temporal server with MySQL persistence in Kubernetes/OpenShift and are migrating from Helm chart 0.73.1 (server 1.29.1) to chart 1.x.

For MySQL HA, we have a 3-node setup but no single LB/VIP endpoint available.
Today, connectAddr appears to be treated as a single effective endpoint at runtime (no native comma-separated host list behavior, no SRV-based discovery/failover support).

As confirmed in forum discussion, comma-separated connectAddr is currently not supported by Temporal server for MySQL.

Problem / Use case

In environments without LB/VIP, we need Temporal server persistence to survive primary/node changes without manual reconfiguration/redeploy.

Requested capability

Support one or both of:

Comma-separated MySQL hosts in connectAddr (client-side failover/discovery behavior), and/or
SRV-backed DNS names for MySQL endpoint discovery/failover.

Expected behavior

Temporal server can connect and recover across MySQL node failover using configured host list and/or SRV.
Reconnect logic should not require changing Helm values during failover events.
Behavior and limits documented clearly for MySQL persistence.

Current behavior

Effective MySQL target is a single address at runtime.
Comma-separated host input does not work for MySQL persistence.
SRV-based failover/discovery is not supported.

Environment

Temporal server: 1.29.1 (evaluating upgrade to 1.x)
Helm chart: 0.73.1 (migrating to 1.x)
Persistence: MySQL
Platform: Kubernetes/OpenShift
Constraint: no external/internal LB/VIP for DB endpoint

Additional context

Forum response indicated this should be tracked as a Temporal server issue; chart side is expected to handle it once server support exists.
https://community.temporal.io/t/temporal-s-helm-charts-reaches-milestone-1-0-0-release/19503

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions