Known Problems

On save error: Row size too large (MariaDB)

Explanation

There is a limit on how much can fit into a single InnoDB database row. Read here for more technical insight. As Content Blocks uses the table tt_content, it must be ensured, that the table does not grow indefinitely.

Solutions

First, check if you are using the DYNAMIC row format. If not, alter your tables to use this format, in order to store more data on overflow pages.

ALTER TABLE tt_content ROW_FORMAT=DYNAMIC;
Copied!

Else, here are some tips to save table row size:

  • Reuse existing TYPO3 core and Content Blocks fields as much as possible.
  • Try to minimize the usage of new Text, Link, Email, Radio, Color and Select fields. They all use varchar(255), Link fields even use varchar(1024).
  • You can change varchar fields to text, as suggested here.
  • If applicable, use Collections, as they create a new table.
  • Otherwise consider creating an own extension with custom tables if your Content Blocks are getting too complex.

Read this mariadb troubleshooting guide for in depth explanation and more tips.