Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-30714

SET SESSION ALGORITHM causes operational issues with replication

    XMLWordPrintable

Details

    Description

      When an user wants to set an algorithm for ALTER TABLE, he can do it in two ways:

      • use SET SESSION ALGORITHM variable
      • specify ALGORITHM= in the ALTER statement

      Unfortunately, the former will cause the alter to be processed in different ways on master and replicas (either async or galera replicas) because, obviously, SET SESSION is not replicated.

      So, the outcome in presence of replication is not what the user wants.

      Furthermore, this may cause galera cluster breakdown when the alter fails on master due to unsupported algorithm, but it is executed on the other galera nodes because there, default algorithm is selected.

      I would suggest to deprecate the former way to specify ALGORITHM for ALTER and only allow it to be specified in ALTER statement itself.

      This will avoid operational incidents (I have already witnessed a few myself).

      Thanks
      Rick

      Attachments

        Issue Links

          Activity

            People

              Elkin Andrei Elkin
              rpizzi Rick Pizzi (Inactive)
              Votes:
              7 Vote for this issue
              Watchers:
              10 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.