2

I'm helping on a site that is on a different server than usual and see this error regularly in the back end when trying to complete various tasks (e.g. clear caches, run database updates, etc.)

[debug_info] => TRUNCATE TABLE civicrm_menu [nativecode=1118 ** Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.]

The site is mostly working, but as mentioned many tasks error out and the above shows in the debug log. What could cause this?

2
  • are they using multiple languages?
    – petednz - fuzion
    Commented Aug 7, 2019 at 23:07
  • No, just English.
    – Laryn
    Commented Aug 8, 2019 at 13:46

2 Answers 2

3

Also see https://civicrm.stackexchange.com/a/31644/225 where the suggested fix is:

 ALTER TABLE civicrm_menu ROW_FORMAT=DYNAMIC 

Then rebuild the menus

1
  • 1
    Thanks! I just commented out the innodb_strict_mode=0 setting as a test and performed this ALTER -- and it seems to fix it, too.
    – Laryn
    Commented Aug 9, 2019 at 14:43
1

Suggestions from various folks on chat include the following settings in my.cnf:

I changed those and was still having issues. This setting fixed it for me (and may be due to the site running on MariaDB?).

  • innodb_strict_mode=0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.