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

mysql_upgrade fails with disabled InnoDB

    XMLWordPrintable

Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Fixed
    • 10.0.4
    • 10.0.5
    • None
    • None

    Description

      Initially reported at https://blog.mariadb.org/mariadb-10-0-4-alpha-now-available/

      If server is started without InnoDB on an old datadir, mysql_upgrade fails with

      Phase 3/3: Running 'mysql_fix_privilege_tables'...
      ERROR 1286 (42000) at line 37: Unknown storage engine 'INNODB'
      ERROR 1286 (42000) at line 46: Unknown storage engine 'INNODB'
      FATAL ERROR: Upgrade failed

      scripts/mysql_fix_privilege_tables.sql sets NO_ENGINE_SUBSTITUTION and then attempts to create tables using InnoDB engine, so the error is not surprising.

      MySQL 5.6.13 has additional logic that checks for the presence of InnoDB and skips table creation if there is no InnoDB. However, it should be adopted with caution, because it also has a problem, later it attempts to ALTER the tables unconditionally, so mysql_upgrade fails anyway (see http://bugs.mysql.com/bug.php?id=70152).

      As discussed, we should not create the tables if InnoDB is disabled (and should not attempt ALTERing them). mysql_upgrade should not fail, but it might make sense to produce a warning.

      Attachments

        Activity

          People

            svoj Sergey Vojtovich
            elenst Elena Stepanova
            Votes:
            0 Vote for this issue
            Watchers:
            3 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.