Uploaded image for project: 'MariaDB Connector/J'
  1. MariaDB Connector/J
  2. CONJ-595

Create option to configure DONOR/DESYNCED Galera nodes to be unavailable for load-balancing

    XMLWordPrintable

    Details

    • Type: Task
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.2.5, 1.7.4
    • Component/s: Failover
    • Labels:
      None

      Description

      When a node is in the DONOR/DESYNCED state, it doesn't participate in flow control, so its data can get stale. Galera states are explained here:

      http://galeracluster.com/documentation-webpages/nodestates.html#changes-in-the-node-state

      A node's state can be checked with wsrep_local_state:

      http://galeracluster.com/documentation-webpages/galerastatusvariables.html#wsrep-local-state

      MaxScale's Galera Monitor treats nodes in the DONOR/DESYNCED state as unavailable unless available_when_donor is configured. This ensures that MaxScale does not route queries to a node that has stale data.

      https://mariadb.com/kb/en/mariadb-enterprise/mariadb-maxscale-22-galera-monitor/#available_when_donor

      As far as I can tell, MariaDB Connector/J's load balancing implementation does not have a way to keep queries from being sent to desynced Galera nodes. Maybe we should add an option that would enable that kind of behavior?

        Attachments

          Activity

            People

            Assignee:
            diego dupin Diego Dupin
            Reporter:
            GeoffMontee Geoff Montee
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: