# # Bug#36169 create innodb compressed table with too large row size crashed # http://bugs.mysql.com/36169 # -- source include/innodb_page_size_small.inc let $file_per_table=`select @@innodb_file_per_table`; SET GLOBAL innodb_file_per_table=ON; # # The following is copied from http://bugs.mysql.com/36169 # (http://bugs.mysql.com/file.php?id=9121) # Probably it can be simplified but that is not obvious. # # we care only that the following SQL commands do produce errors # as expected and do not crash the server -- disable_query_log -- disable_result_log call mtr.add_suppression("Cannot add field .* in table .* because after adding it, the row size is"); # Generating 10 tables # Creating a table with 94 columns and 24 indexes DROP TABLE IF EXISTS `table0`; set innodb_strict_mode=on; SET sql_mode = 'NO_ENGINE_SUBSTITUTION'; --error ER_TOO_BIG_ROWSIZE CREATE TABLE IF NOT EXISTS `table0` (`col0` BOOL, `col1` BOOL, `col2` TINYINT, `col3` DATE, `col4` TIME, `col5` SET ('test1','test2','test3'), `col6` TIME, `col7` TEXT, `col8` DECIMAL, `col9` SET ('test1','test2','test3'), `col10` FLOAT, `col11` DOUBLE PRECISION, `col12` ENUM ('test1','test2','test3'), `col13` TINYBLOB, `col14` YEAR, `col15` SET ('test1','test2','test3'), `col16` NUMERIC, `col17` NUMERIC, `col18` BLOB, `col19` DATETIME, `col20` DOUBLE PRECISION, `col21` DECIMAL, `col22` DATETIME, `col23` NUMERIC, `col24` NUMERIC, `col25` LONGTEXT, `col26` TINYBLOB, `col27` TIME, `col28` TINYBLOB, `col29` ENUM ('test1','test2','test3'), `col30` SMALLINT, `col31` REAL, `col32` FLOAT, `col33` CHAR (175), `col34` TINYTEXT, `col35` TINYTEXT, `col36` TINYBLOB, `col37` TINYBLOB, `col38` TINYTEXT, `col39` MEDIUMBLOB, `col40` TIMESTAMP, `col41` DOUBLE, `col42` SMALLINT, `col43` LONGBLOB, `col44` VARCHAR (80), `col45` MEDIUMTEXT, `col46` NUMERIC, `col47` BIGINT, `col48` DATE, `col49` TINYBLOB, `col50` DATE, `col51` BOOL, `col52` MEDIUMINT, `col53` FLOAT, `col54` TINYBLOB, `col55` LONGTEXT, `col56` SMALLINT, `col57` ENUM ('test1','test2','test3'), `col58` DATETIME, `col59` MEDIUMTEXT, `col60` VARCHAR (232), `col61` NUMERIC, `col62` YEAR, `col63` SMALLINT, `col64` TIMESTAMP, `col65` BLOB, `col66` LONGBLOB, `col67` INT, `col68` LONGTEXT, `col69` ENUM ('test1','test2','test3'), `col70` INT, `col71` TIME, `col72` TIMESTAMP, `col73` TIMESTAMP, `col74` VARCHAR (170), `col75` SET ('test1','test2','test3'), `col76` TINYBLOB, `col77` BIGINT, `col78` NUMERIC, `col79` DATETIME, `col80` YEAR, `col81` NUMERIC, `col82` LONGBLOB, `col83` TEXT, `col84` CHAR (83), `col85` DECIMAL, `col86` FLOAT, `col87` INT, `col88` VARCHAR (145), `col89` DATE, `col90` DECIMAL, `col91` DECIMAL, `col92` MEDIUMBLOB, `col93` TIME, KEY `idx0` (`col69`,`col90`,`col8`), KEY `idx1` (`col60`), KEY `idx2` (`col60`,`col70`,`col74`), KEY `idx3` (`col22`,`col32`,`col72`,`col30`), KEY `idx4` (`col29`), KEY `idx5` (`col19`,`col45`(143)), KEY `idx6` (`col46`,`col48`,`col5`,`col39`(118)), KEY `idx7` (`col48`,`col61`), KEY `idx8` (`col93`), KEY `idx9` (`col31`), KEY `idx10` (`col30`,`col21`), KEY `idx11` (`col67`), KEY `idx12` (`col44`,`col6`,`col8`,`col38`(226)), KEY `idx13` (`col71`,`col41`,`col15`,`col49`(88)), KEY `idx14` (`col78`), KEY `idx15` (`col63`,`col67`,`col64`), KEY `idx16` (`col17`,`col86`), KEY `idx17` (`col77`,`col56`,`col10`,`col55`(24)), KEY `idx18` (`col62`), KEY `idx19` (`col31`,`col57`,`col56`,`col53`), KEY `idx20` (`col46`), KEY `idx21` (`col83`(54)), KEY `idx22` (`col51`,`col7`(120)), KEY `idx23` (`col7`(163),`col31`,`col71`,`col14`) )engine=innodb ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1; SET sql_mode = default; # Creating a table with 10 columns and 32 indexes DROP TABLE IF EXISTS `table1`; --error ER_TOO_BIG_ROWSIZE CREATE TABLE IF NOT EXISTS `table1` (`col0` CHAR (113), `col1` FLOAT, `col2` BIGINT, `col3` DECIMAL, `col4` BLOB, `col5` LONGTEXT, `col6` SET ('test1','test2','test3'), `col7` BIGINT, `col8` BIGINT, `col9` TINYBLOB, KEY `idx0` (`col5`(101),`col7`,`col8`), KEY `idx1` (`col8`), KEY `idx2` (`col4`(177),`col9`(126),`col6`,`col3`), KEY `idx3` (`col5`(160)), KEY `idx4` (`col9`(242)), KEY `idx5` (`col4`(139),`col2`,`col3`), KEY `idx6` (`col7`), KEY `idx7` (`col6`,`col2`,`col0`,`col3`), KEY `idx8` (`col9`(66)), KEY `idx9` (`col5`(253)), KEY `idx10` (`col1`,`col7`,`col2`), KEY `idx11` (`col9`(242),`col0`,`col8`,`col5`(163)), KEY `idx12` (`col8`), KEY `idx13` (`col0`,`col9`(37)), KEY `idx14` (`col0`), KEY `idx15` (`col5`(111)), KEY `idx16` (`col8`,`col0`,`col5`(13)), KEY `idx17` (`col4`(139)), KEY `idx18` (`col5`(189),`col2`,`col3`,`col9`(136)), KEY `idx19` (`col0`,`col3`,`col1`,`col8`), KEY `idx20` (`col8`), KEY `idx21` (`col0`,`col7`,`col9`(227),`col3`), KEY `idx22` (`col0`), KEY `idx23` (`col2`), KEY `idx24` (`col3`), KEY `idx25` (`col2`,`col3`), KEY `idx26` (`col0`), KEY `idx27` (`col5`(254)), KEY `idx28` (`col3`), KEY `idx29` (`col3`), KEY `idx30` (`col7`,`col3`,`col0`,`col4`(220)), KEY `idx31` (`col4`(1),`col0`) )engine=innodb ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1; # Creating a table with 141 columns and 18 indexes DROP TABLE IF EXISTS `table2`; SET sql_mode = 'NO_ENGINE_SUBSTITUTION'; --error ER_TOO_BIG_ROWSIZE CREATE TABLE IF NOT EXISTS `table2` (`col0` BOOL, `col1` MEDIUMINT, `col2` VARCHAR (209), `col3` MEDIUMBLOB, `col4` CHAR (13), `col5` DOUBLE, `col6` TINYTEXT, `col7` REAL, `col8` SMALLINT, `col9` BLOB, `col10` TINYINT, `col11` DECIMAL, `col12` BLOB, `col13` DECIMAL, `col14` LONGBLOB, `col15` SMALLINT, `col16` LONGBLOB, `col17` TINYTEXT, `col18` FLOAT, `col19` CHAR (78), `col20` MEDIUMTEXT, `col21` SET ('test1','test2','test3'), `col22` MEDIUMINT, `col23` INT, `col24` MEDIUMBLOB, `col25` ENUM ('test1','test2','test3'), `col26` TINYBLOB, `col27` VARCHAR (116), `col28` TIMESTAMP, `col29` BLOB, `col30` SMALLINT, `col31` DOUBLE PRECISION, `col32` DECIMAL, `col33` DECIMAL, `col34` TEXT, `col35` MEDIUMINT, `col36` MEDIUMINT, `col37` BIGINT, `col38` VARCHAR (253), `col39` TINYBLOB, `col40` MEDIUMBLOB, `col41` BIGINT, `col42` DOUBLE, `col43` TEXT, `col44` BLOB, `col45` TIME, `col46` MEDIUMINT, `col47` DOUBLE PRECISION, `col48` SET ('test1','test2','test3'), `col49` DOUBLE PRECISION, `col50` VARCHAR (97), `col51` TEXT, `col52` NUMERIC, `col53` ENUM ('test1','test2','test3'), `col54` MEDIUMTEXT, `col55` MEDIUMINT, `col56` DATETIME, `col57` DATETIME, `col58` MEDIUMTEXT, `col59` CHAR (244), `col60` LONGBLOB, `col61` MEDIUMBLOB, `col62` DOUBLE, `col63` SMALLINT, `col64` BOOL, `col65` SMALLINT, `col66` VARCHAR (212), `col67` TIME, `col68` REAL, `col69` BOOL, `col70` BIGINT, `col71` DATE, `col72` TINYINT, `col73` ENUM ('test1','test2','test3'), `col74` DATE, `col75` TIME, `col76` DATETIME, `col77` BOOL, `col78` TINYTEXT, `col79` MEDIUMINT, `col80` NUMERIC, `col81` LONGTEXT, `col82` SET ('test1','test2','test3'), `col83` DOUBLE PRECISION, `col84` NUMERIC, `col85` VARCHAR (184), `col86` DOUBLE PRECISION, `col87` MEDIUMTEXT, `col88` MEDIUMBLOB, `col89` BOOL, `col90` SMALLINT, `col91` TINYINT, `col92` ENUM ('test1','test2','test3'), `col93` BOOL, `col94` TIMESTAMP, `col95` BOOL, `col96` MEDIUMTEXT, `col97` DECIMAL, `col98` BOOL, `col99` DECIMAL, `col100` MEDIUMINT, `col101` DOUBLE PRECISION, `col102` TINYINT, `col103` BOOL, `col104` MEDIUMINT, `col105` DECIMAL, `col106` NUMERIC, `col107` TIMESTAMP, `col108` MEDIUMBLOB, `col109` TINYBLOB, `col110` SET ('test1','test2','test3'), `col111` YEAR, `col112` TIMESTAMP, `col113` CHAR (201), `col114` BOOL, `col115` TINYINT, `col116` DOUBLE, `col117` TINYINT, `col118` TIMESTAMP, `col119` SET ('test1','test2','test3'), `col120` SMALLINT, `col121` TINYBLOB, `col122` TIMESTAMP, `col123` BLOB, `col124` DATE, `col125` SMALLINT, `col126` ENUM ('test1','test2','test3'), `col127` MEDIUMBLOB, `col128` DOUBLE PRECISION, `col129` REAL, `col130` VARCHAR (159), `col131` MEDIUMBLOB, `col132` BIGINT, `col133` INT, `col134` SET ('test1','test2','test3'), `col135` CHAR (198), `col136` SET ('test1','test2','test3'), `col137` MEDIUMTEXT, `col138` SMALLINT, `col139` BLOB, `col140` LONGBLOB, KEY `idx0` (`col14`(139),`col24`(208),`col38`,`col35`), KEY `idx1` (`col48`,`col118`,`col29`(131),`col100`), KEY `idx2` (`col86`,`col67`,`col43`(175)), KEY `idx3` (`col19`), KEY `idx4` (`col40`(220),`col67`), KEY `idx5` (`col99`,`col56`), KEY `idx6` (`col68`,`col28`,`col137`(157)), KEY `idx7` (`col51`(160),`col99`,`col45`,`col39`(9)), KEY `idx8` (`col15`,`col52`,`col90`,`col94`), KEY `idx9` (`col24`(3),`col139`(248),`col108`(118),`col41`), KEY `idx10` (`col36`,`col92`,`col114`), KEY `idx11` (`col115`,`col9`(116)), KEY `idx12` (`col130`,`col93`,`col134`), KEY `idx13` (`col123`(65)), KEY `idx14` (`col44`(90),`col86`,`col119`), KEY `idx15` (`col69`), KEY `idx16` (`col132`,`col81`(118),`col18`), KEY `idx17` (`col24`(250),`col7`,`col92`,`col45`) )engine=innodb ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1; # Creating a table with 199 columns and 1 indexes DROP TABLE IF EXISTS `table3`; --error ER_TOO_BIG_ROWSIZE CREATE TABLE IF NOT EXISTS `table3` (`col0` SMALLINT, `col1` SET ('test1','test2','test3'), `col2` TINYTEXT, `col3` DOUBLE, `col4` NUMERIC, `col5` DATE, `col6` BIGINT, `col7` DOUBLE, `col8` TEXT, `col9` INT, `col10` REAL, `col11` TINYINT, `col12` NUMERIC, `col13` NUMERIC, `col14` TIME, `col15` DOUBLE, `col16` REAL, `col17` MEDIUMBLOB, `col18` YEAR, `col19` TINYTEXT, `col20` YEAR, `col21` CHAR (250), `col22` TINYINT, `col23` TINYINT, `col24` SMALLINT, `col25` DATETIME, `col26` MEDIUMINT, `col27` LONGBLOB, `col28` VARCHAR (106), `col29` FLOAT, `col30` MEDIUMTEXT, `col31` TINYBLOB, `col32` BIGINT, `col33` YEAR, `col34` REAL, `col35` MEDIUMBLOB, `col36` LONGTEXT, `col37` LONGBLOB, `col38` BIGINT, `col39` FLOAT, `col40` TIME, `col41` DATETIME, `col42` BOOL, `col43` BIGINT, `col44` SMALLINT, `col45` TIME, `col46` DOUBLE PRECISION, `col47` TIME, `col48` TINYTEXT, `col49` DOUBLE PRECISION, `col50` BIGINT, `col51` NUMERIC, `col52` TINYBLOB, `col53` DATE, `col54` DECIMAL, `col55` SMALLINT, `col56` TINYTEXT, `col57` ENUM ('test1','test2','test3'), `col58` YEAR, `col59` TIME, `col60` TINYINT, `col61` DECIMAL, `col62` DOUBLE, `col63` DATE, `col64` LONGTEXT, `col65` DOUBLE, `col66` VARCHAR (88), `col67` MEDIUMTEXT, `col68` DATE, `col69` MEDIUMINT, `col70` DECIMAL, `col71` MEDIUMTEXT, `col72` LONGTEXT, `col73` REAL, `col74` DOUBLE, `col75` TIME, `col76` DATE, `col77` DECIMAL, `col78` MEDIUMBLOB, `col79` NUMERIC, `col80` BIGINT, `col81` YEAR, `col82` SMALLINT, `col83` MEDIUMINT, `col84` TINYINT, `col85` MEDIUMBLOB, `col86` TIME, `col87` MEDIUMBLOB, `col88` LONGTEXT, `col89` BOOL, `col90` BLOB, `col91` LONGBLOB, `col92` YEAR, `col93` BLOB, `col94` INT, `col95` TINYTEXT, `col96` TINYINT, `col97` DECIMAL, `col98` ENUM ('test1','test2','test3'), `col99` MEDIUMINT, `col100` TINYINT, `col101` MEDIUMBLOB, `col102` TINYINT, `col103` SET ('test1','test2','test3'), `col104` TIMESTAMP, `col105` TEXT, `col106` DATETIME, `col107` MEDIUMTEXT, `col108` CHAR (220), `col109` TIME, `col110` VARCHAR (131), `col111` DECIMAL, `col112` FLOAT, `col113` SMALLINT, `col114` BIGINT, `col115` LONGBLOB, `col116` SET ('test1','test2','test3'), `col117` ENUM ('test1','test2','test3'), `col118` BLOB, `col119` MEDIUMTEXT, `col120` SET ('test1','test2','test3'), `col121` DATETIME, `col122` FLOAT, `col123` VARCHAR (242), `col124` YEAR, `col125` MEDIUMBLOB, `col126` TIME, `col127` BOOL, `col128` TINYBLOB, `col129` DOUBLE, `col130` TINYINT, `col131` BIGINT, `col132` SMALLINT, `col133` INT, `col134` DOUBLE PRECISION, `col135` MEDIUMBLOB, `col136` SET ('test1','test2','test3'), `col137` TINYTEXT, `col138` DOUBLE PRECISION, `col139` NUMERIC, `col140` BLOB, `col141` SET ('test1','test2','test3'), `col142` INT, `col143` VARCHAR (26), `col144` BLOB, `col145` REAL, `col146` SET ('test1','test2','test3'), `col147` LONGBLOB, `col148` TEXT, `col149` BLOB, `col150` CHAR (189), `col151` LONGTEXT, `col152` INT, `col153` FLOAT, `col154` LONGTEXT, `col155` DATE, `col156` LONGBLOB, `col157` TINYBLOB, `col158` REAL, `col159` DATE, `col160` TIME, `col161` YEAR, `col162` DOUBLE, `col163` VARCHAR (90), `col164` FLOAT, `col165` NUMERIC, `col166` ENUM ('test1','test2','test3'), `col167` DOUBLE PRECISION, `col168` DOUBLE PRECISION, `col169` TINYBLOB, `col170` TIME, `col171` SMALLINT, `col172` TINYTEXT, `col173` SMALLINT, `col174` DOUBLE, `col175` VARCHAR (14), `col176` VARCHAR (90), `col177` REAL, `col178` MEDIUMINT, `col179` TINYBLOB, `col180` FLOAT, `col181` TIMESTAMP, `col182` REAL, `col183` DOUBLE PRECISION, `col184` BIGINT, `col185` INT, `col186` MEDIUMTEXT, `col187` TIME, `col188` FLOAT, `col189` TIME, `col190` INT, `col191` FLOAT, `col192` MEDIUMINT, `col193` TINYINT, `col194` MEDIUMTEXT, `col195` DATE, `col196` TIME, `col197` YEAR, `col198` CHAR (206), KEY `idx0` (`col39`,`col23`) )engine=innodb ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1; # Creating a table with 133 columns and 16 indexes DROP TABLE IF EXISTS `table4`; --error ER_TOO_BIG_ROWSIZE CREATE TABLE IF NOT EXISTS `table4` (`col0` VARCHAR (60), `col1` NUMERIC, `col2` LONGTEXT, `col3` MEDIUMTEXT, `col4` LONGTEXT, `col5` LONGBLOB, `col6` LONGBLOB, `col7` DATETIME, `col8` TINYTEXT, `col9` BLOB, `col10` BOOL, `col11` BIGINT, `col12` TEXT, `col13` VARCHAR (213), `col14` TINYBLOB, `col15` BOOL, `col16` MEDIUMTEXT, `col17` DOUBLE, `col18` TEXT, `col19` BLOB, `col20` SET ('test1','test2','test3'), `col21` TINYINT, `col22` DATETIME, `col23` TINYINT, `col24` ENUM ('test1','test2','test3'), `col25` REAL, `col26` BOOL, `col27` FLOAT, `col28` LONGBLOB, `col29` DATETIME, `col30` FLOAT, `col31` SET ('test1','test2','test3'), `col32` LONGBLOB, `col33` NUMERIC, `col34` YEAR, `col35` VARCHAR (146), `col36` BIGINT, `col37` DATETIME, `col38` DATE, `col39` SET ('test1','test2','test3'), `col40` CHAR (112), `col41` FLOAT, `col42` YEAR, `col43` TIME, `col44` DOUBLE, `col45` NUMERIC, `col46` FLOAT, `col47` DECIMAL, `col48` BIGINT, `col49` DECIMAL, `col50` YEAR, `col51` MEDIUMTEXT, `col52` LONGBLOB, `col53` SET ('test1','test2','test3'), `col54` BLOB, `col55` FLOAT, `col56` REAL, `col57` REAL, `col58` TEXT, `col59` MEDIUMBLOB, `col60` INT, `col61` INT, `col62` DATE, `col63` TEXT, `col64` DATE, `col65` ENUM ('test1','test2','test3'), `col66` DOUBLE PRECISION, `col67` TINYTEXT, `col68` TINYBLOB, `col69` FLOAT, `col70` BLOB, `col71` DATETIME, `col72` DOUBLE, `col73` LONGTEXT, `col74` TIME, `col75` DATETIME, `col76` VARCHAR (122), `col77` MEDIUMTEXT, `col78` MEDIUMTEXT, `col79` BOOL, `col80` LONGTEXT, `col81` TINYTEXT, `col82` NUMERIC, `col83` DOUBLE PRECISION, `col84` DATE, `col85` YEAR, `col86` BLOB, `col87` TINYTEXT, `col88` DOUBLE PRECISION, `col89` MEDIUMINT, `col90` MEDIUMTEXT, `col91` NUMERIC, `col92` DATETIME, `col93` NUMERIC, `col94` SET ('test1','test2','test3'), `col95` TINYTEXT, `col96` SET ('test1','test2','test3'), `col97` YEAR, `col98` MEDIUMINT, `col99` TEXT, `col100` TEXT, `col101` TIME, `col102` VARCHAR (225), `col103` TINYTEXT, `col104` TEXT, `col105` MEDIUMTEXT, `col106` TINYINT, `col107` TEXT, `col108` LONGBLOB, `col109` LONGTEXT, `col110` TINYTEXT, `col111` CHAR (56), `col112` YEAR, `col113` ENUM ('test1','test2','test3'), `col114` TINYBLOB, `col115` DATETIME, `col116` DATE, `col117` TIME, `col118` MEDIUMTEXT, `col119` DOUBLE PRECISION, `col120` FLOAT, `col121` TIMESTAMP, `col122` MEDIUMINT, `col123` YEAR, `col124` DATE, `col125` TEXT, `col126` FLOAT, `col127` TINYTEXT, `col128` BOOL, `col129` NUMERIC, `col130` TIMESTAMP, `col131` INT, `col132` MEDIUMBLOB, KEY `idx0` (`col130`), KEY `idx1` (`col30`,`col55`,`col19`(31)), KEY `idx2` (`col104`(186)), KEY `idx3` (`col131`), KEY `idx4` (`col64`,`col93`,`col2`(11)), KEY `idx5` (`col34`,`col121`,`col22`), KEY `idx6` (`col33`,`col55`,`col83`), KEY `idx7` (`col17`,`col87`(245),`col99`(17)), KEY `idx8` (`col65`,`col120`), KEY `idx9` (`col82`), KEY `idx10` (`col9`(72)), KEY `idx11` (`col88`), KEY `idx12` (`col128`,`col9`(200),`col71`,`col66`), KEY `idx13` (`col77`(126)), KEY `idx14` (`col105`(26),`col13`,`col117`), KEY `idx15` (`col4`(246),`col130`,`col115`,`col3`(141)) )engine=innodb ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1; # Creating a table with 176 columns and 13 indexes DROP TABLE IF EXISTS `table5`; --error ER_TOO_BIG_ROWSIZE CREATE TABLE IF NOT EXISTS `table5` (`col0` MEDIUMTEXT, `col1` VARCHAR (90), `col2` TINYTEXT, `col3` TIME, `col4` BOOL, `col5` TINYTEXT, `col6` BOOL, `col7` TIMESTAMP, `col8` TINYBLOB, `col9` TINYINT, `col10` YEAR, `col11` SET ('test1','test2','test3'), `col12` TEXT, `col13` CHAR (248), `col14` BIGINT, `col15` TEXT, `col16` TINYINT, `col17` NUMERIC, `col18` SET ('test1','test2','test3'), `col19` LONGBLOB, `col20` FLOAT, `col21` INT, `col22` TEXT, `col23` BOOL, `col24` DECIMAL, `col25` DOUBLE PRECISION, `col26` FLOAT, `col27` TINYBLOB, `col28` NUMERIC, `col29` MEDIUMBLOB, `col30` DATE, `col31` LONGTEXT, `col32` DATE, `col33` FLOAT, `col34` BIGINT, `col35` TINYTEXT, `col36` MEDIUMTEXT, `col37` TIME, `col38` INT, `col39` TINYINT, `col40` SET ('test1','test2','test3'), `col41` CHAR (130), `col42` SMALLINT, `col43` INT, `col44` MEDIUMTEXT, `col45` VARCHAR (126), `col46` INT, `col47` DOUBLE PRECISION, `col48` BIGINT, `col49` MEDIUMTEXT, `col50` TINYBLOB, `col51` MEDIUMINT, `col52` TEXT, `col53` VARCHAR (208), `col54` VARCHAR (207), `col55` NUMERIC, `col56` DATETIME, `col57` ENUM ('test1','test2','test3'), `col58` NUMERIC, `col59` TINYBLOB, `col60` VARCHAR (73), `col61` MEDIUMTEXT, `col62` TINYBLOB, `col63` DATETIME, `col64` NUMERIC, `col65` MEDIUMINT, `col66` DATETIME, `col67` NUMERIC, `col68` TINYINT, `col69` VARCHAR (58), `col70` DECIMAL, `col71` MEDIUMTEXT, `col72` DATE, `col73` TIME, `col74` DOUBLE PRECISION, `col75` DECIMAL, `col76` MEDIUMBLOB, `col77` REAL, `col78` YEAR, `col79` YEAR, `col80` LONGBLOB, `col81` BLOB, `col82` BIGINT, `col83` ENUM ('test1','test2','test3'), `col84` NUMERIC, `col85` SET ('test1','test2','test3'), `col86` MEDIUMTEXT, `col87` LONGBLOB, `col88` TIME, `col89` ENUM ('test1','test2','test3'), `col90` DECIMAL, `col91` FLOAT, `col92` DATETIME, `col93` TINYTEXT, `col94` TIMESTAMP, `col95` TIMESTAMP, `col96` TEXT, `col97` REAL, `col98` VARCHAR (198), `col99` TIME, `col100` TINYINT, `col101` BIGINT, `col102` LONGBLOB, `col103` LONGBLOB, `col104` MEDIUMINT, `col105` MEDIUMTEXT, `col106` TIMESTAMP, `col107` SMALLINT, `col108` NUMERIC, `col109` DECIMAL, `col110` FLOAT, `col111` DECIMAL, `col112` REAL, `col113` TINYTEXT, `col114` FLOAT, `col115` VARCHAR (7), `col116` LONGTEXT, `col117` DATE, `col118` BIGINT, `col119` TEXT, `col120` BIGINT, `col121` BLOB, `col122` CHAR (110), `col123` NUMERIC, `col124` MEDIUMBLOB, `col125` NUMERIC, `col126` NUMERIC, `col127` BOOL, `col128` TIME, `col129` TINYBLOB, `col130` TINYBLOB, `col131` DATE, `col132` INT, `col133` VARCHAR (123), `col134` CHAR (238), `col135` VARCHAR (225), `col136` LONGTEXT, `col137` LONGBLOB, `col138` REAL, `col139` TINYBLOB, `col140` DATETIME, `col141` TINYTEXT, `col142` LONGBLOB, `col143` BIGINT, `col144` VARCHAR (236), `col145` TEXT, `col146` YEAR, `col147` DECIMAL, `col148` TEXT, `col149` MEDIUMBLOB, `col150` TINYINT, `col151` BOOL, `col152` VARCHAR (72), `col153` INT, `col154` VARCHAR (165), `col155` TINYINT, `col156` MEDIUMTEXT, `col157` DOUBLE PRECISION, `col158` TIME, `col159` MEDIUMBLOB, `col160` LONGBLOB, `col161` DATETIME, `col162` DOUBLE PRECISION, `col163` BLOB, `col164` ENUM ('test1','test2','test3'), `col165` TIMESTAMP, `col166` DATE, `col167` TINYBLOB, `col168` TINYBLOB, `col169` LONGBLOB, `col170` DATETIME, `col171` BIGINT, `col172` VARCHAR (30), `col173` LONGTEXT, `col174` TIME, `col175` FLOAT, KEY `idx0` (`col16`,`col156`(139),`col97`,`col120`), KEY `idx1` (`col24`,`col0`(108)), KEY `idx2` (`col117`,`col173`(34),`col132`,`col82`), KEY `idx3` (`col2`(86)), KEY `idx4` (`col2`(43)), KEY `idx5` (`col83`,`col35`(87),`col111`), KEY `idx6` (`col6`,`col134`,`col92`), KEY `idx7` (`col56`), KEY `idx8` (`col30`,`col53`,`col129`(66)), KEY `idx9` (`col53`,`col113`(211),`col32`,`col15`(75)), KEY `idx10` (`col34`), KEY `idx11` (`col126`), KEY `idx12` (`col24`) )engine=innodb ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1; # Creating a table with 179 columns and 46 indexes DROP TABLE IF EXISTS `table6`; -- error ER_TOO_BIG_ROWSIZE --error ER_TOO_BIG_ROWSIZE CREATE TABLE IF NOT EXISTS `table6` (`col0` ENUM ('test1','test2','test3'), `col1` MEDIUMBLOB, `col2` MEDIUMBLOB, `col3` DATETIME, `col4` DATE, `col5` YEAR, `col6` REAL, `col7` NUMERIC, `col8` MEDIUMBLOB, `col9` TEXT, `col10` TIMESTAMP, `col11` DOUBLE, `col12` DOUBLE, `col13` SMALLINT, `col14` TIMESTAMP, `col15` DECIMAL, `col16` DATE, `col17` TEXT, `col18` LONGBLOB, `col19` BIGINT, `col20` FLOAT, `col21` DATETIME, `col22` TINYINT, `col23` MEDIUMBLOB, `col24` SET ('test1','test2','test3'), `col25` TIME, `col26` TEXT, `col27` LONGTEXT, `col28` BIGINT, `col29` REAL, `col30` YEAR, `col31` MEDIUMBLOB, `col32` MEDIUMINT, `col33` FLOAT, `col34` TEXT, `col35` DATE, `col36` TIMESTAMP, `col37` REAL, `col38` BLOB, `col39` BLOB, `col40` BLOB, `col41` TINYBLOB, `col42` INT, `col43` TINYINT, `col44` REAL, `col45` BIGINT, `col46` TIMESTAMP, `col47` BLOB, `col48` ENUM ('test1','test2','test3'), `col49` BOOL, `col50` CHAR (109), `col51` DOUBLE, `col52` DOUBLE PRECISION, `col53` ENUM ('test1','test2','test3'), `col54` FLOAT, `col55` DOUBLE PRECISION, `col56` CHAR (166), `col57` TEXT, `col58` TIME, `col59` DECIMAL, `col60` TEXT, `col61` ENUM ('test1','test2','test3'), `col62` LONGTEXT, `col63` YEAR, `col64` DOUBLE, `col65` CHAR (87), `col66` DATE, `col67` BOOL, `col68` MEDIUMBLOB, `col69` DATETIME, `col70` DECIMAL, `col71` TIME, `col72` REAL, `col73` LONGTEXT, `col74` BLOB, `col75` REAL, `col76` INT, `col77` INT, `col78` FLOAT, `col79` DOUBLE, `col80` MEDIUMINT, `col81` ENUM ('test1','test2','test3'), `col82` VARCHAR (221), `col83` BIGINT, `col84` TINYINT, `col85` BIGINT, `col86` FLOAT, `col87` MEDIUMBLOB, `col88` CHAR (126), `col89` MEDIUMBLOB, `col90` DATETIME, `col91` TINYINT, `col92` DOUBLE, `col93` NUMERIC, `col94` DATE, `col95` BLOB, `col96` DATETIME, `col97` TIME, `col98` LONGBLOB, `col99` INT, `col100` SET ('test1','test2','test3'), `col101` TINYBLOB, `col102` INT, `col103` MEDIUMBLOB, `col104` MEDIUMTEXT, `col105` FLOAT, `col106` TINYBLOB, `col107` VARCHAR (26), `col108` TINYINT, `col109` TIME, `col110` TINYBLOB, `col111` LONGBLOB, `col112` TINYTEXT, `col113` FLOAT, `col114` TINYINT, `col115` NUMERIC, `col116` TIME, `col117` SET ('test1','test2','test3'), `col118` DATE, `col119` SMALLINT, `col120` BLOB, `col121` TINYTEXT, `col122` REAL, `col123` YEAR, `col124` REAL, `col125` BOOL, `col126` BLOB, `col127` REAL, `col128` MEDIUMBLOB, `col129` TIMESTAMP, `col130` LONGBLOB, `col131` MEDIUMBLOB, `col132` YEAR, `col133` YEAR, `col134` INT, `col135` MEDIUMINT, `col136` MEDIUMINT, `col137` TINYTEXT, `col138` TINYBLOB, `col139` BLOB, `col140` SET ('test1','test2','test3'), `col141` ENUM ('test1','test2','test3'), `col142` ENUM ('test1','test2','test3'), `col143` TINYTEXT, `col144` DATETIME, `col145` TEXT, `col146` DOUBLE PRECISION, `col147` DECIMAL, `col148` MEDIUMTEXT, `col149` TINYTEXT, `col150` SET ('test1','test2','test3'), `col151` MEDIUMTEXT, `col152` CHAR (126), `col153` DOUBLE, `col154` CHAR (243), `col155` SET ('test1','test2','test3'), `col156` SET ('test1','test2','test3'), `col157` DATETIME, `col158` DOUBLE, `col159` NUMERIC, `col160` DECIMAL, `col161` FLOAT, `col162` LONGBLOB, `col163` LONGTEXT, `col164` INT, `col165` TIME, `col166` CHAR (27), `col167` VARCHAR (63), `col168` TEXT, `col169` TINYBLOB, `col170` TINYBLOB, `col171` ENUM ('test1','test2','test3'), `col172` INT, `col173` TIME, `col174` DECIMAL, `col175` DOUBLE, `col176` MEDIUMBLOB, `col177` LONGBLOB, `col178` CHAR (43), KEY `idx0` (`col131`(219)), KEY `idx1` (`col67`,`col122`,`col59`,`col87`(33)), KEY `idx2` (`col83`,`col42`,`col57`(152)), KEY `idx3` (`col106`(124)), KEY `idx4` (`col173`,`col80`,`col165`,`col89`(78)), KEY `idx5` (`col174`,`col145`(108),`col23`(228),`col141`), KEY `idx6` (`col157`,`col140`), KEY `idx7` (`col130`(188),`col15`), KEY `idx8` (`col52`), KEY `idx9` (`col144`), KEY `idx10` (`col155`), KEY `idx11` (`col62`(230),`col1`(109)), KEY `idx12` (`col151`(24),`col95`(85)), KEY `idx13` (`col114`), KEY `idx14` (`col42`,`col98`(56),`col146`), KEY `idx15` (`col147`,`col39`(254),`col35`), KEY `idx16` (`col79`), KEY `idx17` (`col65`), KEY `idx18` (`col149`(165),`col168`(119),`col32`,`col117`), KEY `idx19` (`col64`), KEY `idx20` (`col93`), KEY `idx21` (`col64`,`col113`,`col104`(182)), KEY `idx22` (`col52`,`col111`(189)), KEY `idx23` (`col45`), KEY `idx24` (`col154`,`col107`,`col110`(159)), KEY `idx25` (`col149`(1),`col87`(131)), KEY `idx26` (`col58`,`col115`,`col63`), KEY `idx27` (`col95`(9),`col0`,`col87`(113)), KEY `idx28` (`col92`,`col130`(1)), KEY `idx29` (`col151`(129),`col137`(254),`col13`), KEY `idx30` (`col49`), KEY `idx31` (`col28`), KEY `idx32` (`col83`,`col146`), KEY `idx33` (`col155`,`col90`,`col17`(245)), KEY `idx34` (`col174`,`col169`(44),`col107`), KEY `idx35` (`col113`), KEY `idx36` (`col52`), KEY `idx37` (`col16`,`col120`(190)), KEY `idx38` (`col28`), KEY `idx39` (`col131`(165)), KEY `idx40` (`col135`,`col26`(86)), KEY `idx41` (`col69`,`col94`), KEY `idx42` (`col105`,`col151`(38),`col97`), KEY `idx43` (`col88`), KEY `idx44` (`col176`(100),`col42`,`col73`(189),`col94`), KEY `idx45` (`col2`(27),`col27`(116)) )engine=innodb ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1; DROP TABLE IF EXISTS table0; DROP TABLE IF EXISTS table1; DROP TABLE IF EXISTS table2; DROP TABLE IF EXISTS table3; DROP TABLE IF EXISTS table4; DROP TABLE IF EXISTS table5; DROP TABLE IF EXISTS table6; EVAL SET GLOBAL innodb_file_per_table=$file_per_table; SET sql_mode = default;