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

Check constraint with query crashes server and renders DB unusable

    XMLWordPrintable

Details

    Description

      I'm evaluating the possibility of migrating and existing SQL Anywhere database to MariaDB. While trying to port the existing tables, I've come across a scenario which crashes the mysqld server and renders the database useless. I can restart the server but when I attempt to do anything with the database, it crashes again (error log attached).

      Here is SQL that that will reproduce this problem:

      CREATE TABLE column_code
      ( column_name varchar(50)
      , code        char(2)
      , description varchar(255)
      , primary key (column_name, code asc)
      );
      CREATE TABLE sample_table
      ( id          integer  NOT NULL AUTO_INCREMENT PRIMARY KEY
      , value1      integer
      , value2      char(1)
      , some_code   char(2)  NOT NULL CHECK(@column in (select code from column_code where column_name = 'sample_table.some_code'))
      );
      

      I'm not defending the way this was implemented, but it is what it is. I haven't found any documentation stating this shouldn't work. Please let me know if that's the case.

      Thanks!

      Attachments

        Activity

          People

            serg Sergei Golubchik
            jessiepotts Jessie Potts
            Votes:
            0 Vote for this issue
            Watchers:
            2 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.