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

Crash on `CHARACTER SET csname COLLATE DEFAULT` in column definition

Details

    Description

      These statements crash the server:

      CREATE OR REPLACE TABLE t1 (a CHAR(10) CHARACTER SET latin1 COLLATE DEFAULT);
      CREATE OR REPLACE TABLE t1 (a CHAR(10) CHARACTER SET utf8mb4 COLLATE DEFAULT);
      

      Note, this statements do not:

      CREATE OR REPLACE TABLE t1 (a CHAR(10)) CHARACTER SET utf8mb4 COLLATE DEFAULT;
      CREATE OR REPLACE TABLE t1 (a CHAR(10)) CHARACTER SET latin1 COLLATE DEFAULT;
      

      But they can produce a wrong table. See MDEV-27782.

      Attachments

        Issue Links

          Activity

            bar Alexander Barkov added a comment - - edited

            These statements also crash the server:

            SELECT CAST('a' AS CHAR(10) CHARACTER SET latin1 COLLATE DEFAULT);
            SELECT CAST('a' AS CHAR(10) CHARACTER SET utf8mb4 COLLATE DEFAULT);
            

            So does this:

            SELECT * FROM json_table('[{"name":"Jeans"}]', '$[*]' 
              COLUMNS(
                name  VARCHAR(10) CHARACTER SET latin1 COLLATE DEFAULT PATH '$.name'
              )
            ) AS jt;
            

            So does this:

            SELECT COLUMN_GET(COLUMN_CREATE(0, 'string'),0 AS CHAR CHARACTER SET latin1 COLLATE DEFAULT) AS c1;
            

            bar Alexander Barkov added a comment - - edited These statements also crash the server: SELECT CAST ( 'a' AS CHAR (10) CHARACTER SET latin1 COLLATE DEFAULT ); SELECT CAST ( 'a' AS CHAR (10) CHARACTER SET utf8mb4 COLLATE DEFAULT ); So does this: SELECT * FROM json_table( '[{"name":"Jeans"}]' , '$[*]' COLUMNS( name VARCHAR (10) CHARACTER SET latin1 COLLATE DEFAULT PATH '$.name' ) ) AS jt; So does this: SELECT COLUMN_GET(COLUMN_CREATE(0, 'string' ),0 AS CHAR CHARACTER SET latin1 COLLATE DEFAULT ) AS c1;

            This problem was permanently fixed in 10.9 by MDEV-27743.

            Now need to provide a light 10.2 specific fix.

            bar Alexander Barkov added a comment - This problem was permanently fixed in 10.9 by MDEV-27743 . Now need to provide a light 10.2 specific fix.

            Merged to 10.3. Added a fix for sql_yacc_ora.yy.
            Now need to merge up to 10.6 and add JSON_TABLE related tests.

            bar Alexander Barkov added a comment - Merged to 10.3. Added a fix for sql_yacc_ora.yy. Now need to merge up to 10.6 and add JSON_TABLE related tests.

            added a 10.6 specific tests

            bar Alexander Barkov added a comment - added a 10.6 specific tests

            People

              bar Alexander Barkov
              bar Alexander Barkov
              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.