mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
MDEV-18918 SQL mode EMPTY_STRING_IS_NULL breaks RBR upon CREATE TABLE .. SELECT
The 10.5 version of the patch. Removing DEFAULT from INFORMATION_SCHEMA columns. DEFAULT in read-only tables is rather meaningless. Upgrade should go smoothly. Also fixes: MDEV-20254 Problems with EMPTY_STRING_IS_NULL and I_S tables
This commit is contained in:
@@ -28,14 +28,14 @@ DROP FUNCTION test.f1;
|
||||
#########################################################################
|
||||
DESCRIBE information_schema.COLUMNS;
|
||||
Field Type Null Key Default Extra
|
||||
TABLE_CATALOG varchar(512) NO
|
||||
TABLE_SCHEMA varchar(64) NO
|
||||
TABLE_NAME varchar(64) NO
|
||||
COLUMN_NAME varchar(64) NO
|
||||
ORDINAL_POSITION bigint(21) unsigned NO 0
|
||||
TABLE_CATALOG varchar(512) NO NULL
|
||||
TABLE_SCHEMA varchar(64) NO NULL
|
||||
TABLE_NAME varchar(64) NO NULL
|
||||
COLUMN_NAME varchar(64) NO NULL
|
||||
ORDINAL_POSITION bigint(21) unsigned NO NULL
|
||||
COLUMN_DEFAULT longtext YES NULL
|
||||
IS_NULLABLE varchar(3) NO
|
||||
DATA_TYPE varchar(64) NO
|
||||
IS_NULLABLE varchar(3) NO NULL
|
||||
DATA_TYPE varchar(64) NO NULL
|
||||
CHARACTER_MAXIMUM_LENGTH bigint(21) unsigned YES NULL
|
||||
CHARACTER_OCTET_LENGTH bigint(21) unsigned YES NULL
|
||||
NUMERIC_PRECISION bigint(21) unsigned YES NULL
|
||||
@@ -43,49 +43,49 @@ NUMERIC_SCALE bigint(21) unsigned YES NULL
|
||||
DATETIME_PRECISION bigint(21) unsigned YES NULL
|
||||
CHARACTER_SET_NAME varchar(32) YES NULL
|
||||
COLLATION_NAME varchar(32) YES NULL
|
||||
COLUMN_TYPE longtext NO
|
||||
COLUMN_KEY varchar(3) NO
|
||||
EXTRA varchar(30) NO
|
||||
PRIVILEGES varchar(80) NO
|
||||
COLUMN_COMMENT varchar(1024) NO
|
||||
IS_GENERATED varchar(6) NO
|
||||
COLUMN_TYPE longtext NO NULL
|
||||
COLUMN_KEY varchar(3) NO NULL
|
||||
EXTRA varchar(30) NO NULL
|
||||
PRIVILEGES varchar(80) NO NULL
|
||||
COLUMN_COMMENT varchar(1024) NO NULL
|
||||
IS_GENERATED varchar(6) NO NULL
|
||||
GENERATION_EXPRESSION longtext YES NULL
|
||||
SHOW CREATE TABLE information_schema.COLUMNS;
|
||||
Table Create Table
|
||||
COLUMNS CREATE TEMPORARY TABLE `COLUMNS` (
|
||||
`TABLE_CATALOG` varchar(512) NOT NULL DEFAULT '',
|
||||
`TABLE_SCHEMA` varchar(64) NOT NULL DEFAULT '',
|
||||
`TABLE_NAME` varchar(64) NOT NULL DEFAULT '',
|
||||
`COLUMN_NAME` varchar(64) NOT NULL DEFAULT '',
|
||||
`ORDINAL_POSITION` bigint(21) unsigned NOT NULL DEFAULT 0,
|
||||
`COLUMN_DEFAULT` longtext DEFAULT NULL,
|
||||
`IS_NULLABLE` varchar(3) NOT NULL DEFAULT '',
|
||||
`DATA_TYPE` varchar(64) NOT NULL DEFAULT '',
|
||||
`CHARACTER_MAXIMUM_LENGTH` bigint(21) unsigned DEFAULT NULL,
|
||||
`CHARACTER_OCTET_LENGTH` bigint(21) unsigned DEFAULT NULL,
|
||||
`NUMERIC_PRECISION` bigint(21) unsigned DEFAULT NULL,
|
||||
`NUMERIC_SCALE` bigint(21) unsigned DEFAULT NULL,
|
||||
`DATETIME_PRECISION` bigint(21) unsigned DEFAULT NULL,
|
||||
`CHARACTER_SET_NAME` varchar(32) DEFAULT NULL,
|
||||
`COLLATION_NAME` varchar(32) DEFAULT NULL,
|
||||
`COLUMN_TYPE` longtext NOT NULL DEFAULT '',
|
||||
`COLUMN_KEY` varchar(3) NOT NULL DEFAULT '',
|
||||
`EXTRA` varchar(30) NOT NULL DEFAULT '',
|
||||
`PRIVILEGES` varchar(80) NOT NULL DEFAULT '',
|
||||
`COLUMN_COMMENT` varchar(1024) NOT NULL DEFAULT '',
|
||||
`IS_GENERATED` varchar(6) NOT NULL DEFAULT '',
|
||||
`GENERATION_EXPRESSION` longtext DEFAULT NULL
|
||||
`TABLE_CATALOG` varchar(512) NOT NULL,
|
||||
`TABLE_SCHEMA` varchar(64) NOT NULL,
|
||||
`TABLE_NAME` varchar(64) NOT NULL,
|
||||
`COLUMN_NAME` varchar(64) NOT NULL,
|
||||
`ORDINAL_POSITION` bigint(21) unsigned NOT NULL,
|
||||
`COLUMN_DEFAULT` longtext,
|
||||
`IS_NULLABLE` varchar(3) NOT NULL,
|
||||
`DATA_TYPE` varchar(64) NOT NULL,
|
||||
`CHARACTER_MAXIMUM_LENGTH` bigint(21) unsigned,
|
||||
`CHARACTER_OCTET_LENGTH` bigint(21) unsigned,
|
||||
`NUMERIC_PRECISION` bigint(21) unsigned,
|
||||
`NUMERIC_SCALE` bigint(21) unsigned,
|
||||
`DATETIME_PRECISION` bigint(21) unsigned,
|
||||
`CHARACTER_SET_NAME` varchar(32),
|
||||
`COLLATION_NAME` varchar(32),
|
||||
`COLUMN_TYPE` longtext NOT NULL,
|
||||
`COLUMN_KEY` varchar(3) NOT NULL,
|
||||
`EXTRA` varchar(30) NOT NULL,
|
||||
`PRIVILEGES` varchar(80) NOT NULL,
|
||||
`COLUMN_COMMENT` varchar(1024) NOT NULL,
|
||||
`IS_GENERATED` varchar(6) NOT NULL,
|
||||
`GENERATION_EXPRESSION` longtext
|
||||
) DEFAULT CHARSET=utf8
|
||||
SHOW COLUMNS FROM information_schema.COLUMNS;
|
||||
Field Type Null Key Default Extra
|
||||
TABLE_CATALOG varchar(512) NO
|
||||
TABLE_SCHEMA varchar(64) NO
|
||||
TABLE_NAME varchar(64) NO
|
||||
COLUMN_NAME varchar(64) NO
|
||||
ORDINAL_POSITION bigint(21) unsigned NO 0
|
||||
TABLE_CATALOG varchar(512) NO NULL
|
||||
TABLE_SCHEMA varchar(64) NO NULL
|
||||
TABLE_NAME varchar(64) NO NULL
|
||||
COLUMN_NAME varchar(64) NO NULL
|
||||
ORDINAL_POSITION bigint(21) unsigned NO NULL
|
||||
COLUMN_DEFAULT longtext YES NULL
|
||||
IS_NULLABLE varchar(3) NO
|
||||
DATA_TYPE varchar(64) NO
|
||||
IS_NULLABLE varchar(3) NO NULL
|
||||
DATA_TYPE varchar(64) NO NULL
|
||||
CHARACTER_MAXIMUM_LENGTH bigint(21) unsigned YES NULL
|
||||
CHARACTER_OCTET_LENGTH bigint(21) unsigned YES NULL
|
||||
NUMERIC_PRECISION bigint(21) unsigned YES NULL
|
||||
@@ -93,12 +93,12 @@ NUMERIC_SCALE bigint(21) unsigned YES NULL
|
||||
DATETIME_PRECISION bigint(21) unsigned YES NULL
|
||||
CHARACTER_SET_NAME varchar(32) YES NULL
|
||||
COLLATION_NAME varchar(32) YES NULL
|
||||
COLUMN_TYPE longtext NO
|
||||
COLUMN_KEY varchar(3) NO
|
||||
EXTRA varchar(30) NO
|
||||
PRIVILEGES varchar(80) NO
|
||||
COLUMN_COMMENT varchar(1024) NO
|
||||
IS_GENERATED varchar(6) NO
|
||||
COLUMN_TYPE longtext NO NULL
|
||||
COLUMN_KEY varchar(3) NO NULL
|
||||
EXTRA varchar(30) NO NULL
|
||||
PRIVILEGES varchar(80) NO NULL
|
||||
COLUMN_COMMENT varchar(1024) NO NULL
|
||||
IS_GENERATED varchar(6) NO NULL
|
||||
GENERATION_EXPRESSION longtext YES NULL
|
||||
SELECT table_catalog, table_schema, table_name, column_name
|
||||
FROM information_schema.columns WHERE table_catalog IS NULL OR table_catalog <> 'def';
|
||||
|
Reference in New Issue
Block a user