MySQL Forums
Forum List  »  InnoDB

Barracuda & row_format=compressed to assist denormalization (ERROR 1118)
Posted by: Lance Woodson
Date: December 02, 2013 08:39PM

I am wanting to execute a create table as select statement to essentially materialize a view in a read-only slave to generate configurable reports. The select spans 19 tables and brings in a fair number of text and varchar columns across them and results in an "ERROR 1118 (42000): Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs"

Looking around, it seems like I might be able to get around this using a barracuda file format, file per table and row format of compressed. I believe I have configured things correctly:

mysql> show variables like 'innodb_file%';
+--------------------------+-----------+
| Variable_name | Value |
+--------------------------+-----------+
| innodb_file_format | Barracuda |
| innodb_file_format_check | ON |
| innodb_file_format_max | Barracuda |
| innodb_file_per_table | ON |
+--------------------------+-----------+

But when I try to run a test like this:

create table test_mv_2 (
first varchar(10000),
second varchar(10000),
third varchar(10000),
fourth varchar(10000),
fifth varchar(10000),
sixth varchar(10000),
seventh varchar(10000)
) ENGINE=InnoDB ROW_FORMAT=Compressed KEY_BLOCK_SIZE=8;

I get the same error. Anyone have any idea what I might be doing wrong? Thanks.

Options: ReplyQuote


Subject
Views
Written By
Posted
Barracuda & row_format=compressed to assist denormalization (ERROR 1118)
2322
December 02, 2013 08:39PM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.