Uploaded image for project: 'MariaDB MaxScale'
  1. MariaDB MaxScale
  2. MXS-3161

Galera cluster: EVENTs' status ENABLED moved to the Master

    XMLWordPrintable

    Details

    • Type: New Feature
    • Status: Open (View Workflow)
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 2.4.12
    • Fix Version/s: Icebox
    • Component/s: None
    • Labels:
      None

      Description

      In Galera Cluster events creation is properly replicated to all nodes.
      Also, the result of an event is properly replicated to other nodes as usual with ROW based replication.
      Also, Galera takes care of having any EVENT enable on only one node to avoid the same event to execute on more than one node, which is, again, correct.

      Indeed when executing on any node:

      ALTER EVENT myEvent ENABLE;

      The EVENT status on the other nodes will be: SLAVESIDE_DISABLED

      The question is now if MaxScale should move the ENABLED status to the current Master whenever the Master flag is moved from one node to another.

      While it is true that there is no data issue if the EVENT only runs on a 'Slave' node, performance wise in case of 'heavy' events we would be changing data on two Galera nodes.

      So maybe moving the ENABLED status to the current Master is preferrable.

      Now, if we consider this:

      https://jira.mariadb.org/browse/MDEV-19165

      MaxScale would become actually critical because in case of crash or stop of the Master that needs SST on restart all nodes will have SLAVESIDE_DISABLED for the EVENT.

      Considering all this, in my opinion, it would be ideal that MaxScale could move the ENABLED status to the Master.

      Doing such thing should be as easy as:

      ALTER TABLE myEvent ENABLE;

      Galera will take care of disabling it on the other nodes.

        Attachments

          Activity

            People

            Assignee:
            toddstoffel Todd Stoffel
            Reporter:
            claudio.nanni Claudio Nanni (Inactive)
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

              Dates

              Created:
              Updated:

                Git Integration