Bug #84996 | Noisy InnoDB warnings maybe should not be there (or filterable) | ||
---|---|---|---|
Submitted: | 14 Feb 2017 14:49 | Modified: | 16 Feb 2017 9:12 |
Reporter: | Simon Mudd (OCA) | Email Updates: | |
Status: | Verified | Impact on me: | |
Category: | MySQL Server: InnoDB storage engine | Severity: | S3 (Non-critical) |
Version: | 5.7.17 | OS: | Any |
Assigned to: | CPU Architecture: | Any | |
Tags: | index leaf page, innodb, logging, noise, replication |
[14 Feb 2017 14:49]
Simon Mudd
[16 Feb 2017 9:12]
MySQL Verification Team
Verified with testcase -------------------------- drop table if exists t; create table t(a char (217) not null) engine=innodb row_format=compact default charset latin1; alter table t add column b char (255) not null ; alter table t add column c varchar (255) ; alter table t add column d char (255) not null ; alter table t add column e longtext ; alter table t add column f char (255) ; alter table t add column g longtext ; alter table t add column h tinytext ; alter table t add column i char (255) ; alter table t add primary key (c(185),b(185),i(185),h(185)) ; alter table t row_format=compressed key_block_size=2; Last statement fails with: --------------------------- ERROR 1118 (42000): Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs Error log contains: ------------------- [ERROR] InnoDB: Cannot add field `f` in table `test`.`#sql-ib81648-3984889288` because after adding it, the row size is 1963 which is greater than maximum allowed size (1898) for a record on index leaf page. Allowing users to add significant spam to the error log is probably a bad idea.
[16 Feb 2017 16:56]
Jean-François Gagné
Probably duplicate of Bug#84439.