'MySQL syntax error or access violation: 1118 row size too large during installation

I try to install OroCommerce Community Edition for Germany version 4.2.9. When running the migration for the OroImapBundleInstaller I get this error:

> Oro\Bundle\ImapBundle\Migrations\Schema\OroImapBundleInstaller
ERROR: An exception occurred while executing 'ALTER TABLE oro_email_origin ADD imap_host VARCHAR(255) DEFAULT NULL, ADD imap_port INT DEFAULT NULL, ADD imap_ssl VARCHAR(3) DEFAULT NULL, ADD imap_user VARCHAR(100) DEFAULT NULL, ADD imap_password LONGTEXT DEFAULT NULL, ADD smtp_host VARCHAR(255) DEFAULT NULL, ADD smtp_port INT DEFAULT NULL, ADD smtp_encryption VARCHAR(3) DEFAULT NULL, ADD access_token VARCHAR(8192) DEFAULT NULL, ADD refresh_token VARCHAR(8192) DEFAULT NULL, ADD access_token_expires_at DATETIME DEFAULT NULL, ADD account_type VARCHAR(255) DEFAULT 'other'':

SQLSTATE[42000]: Syntax error or access violation: 1118 Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs
In MigrationExecutor.php line 108:

[RuntimeException]
Failed migrations: Oro\Bundle\ImapBundle\Migrations\Schema\OroImapBundleInstaller.


Exception trace:
  at /var/www/oroapp/vendor/oro/platform/src/Oro/Bundle/MigrationBundle/Migration/MigrationExecutor.php:108
 Oro\Bundle\MigrationBundle\Migration\MigrationExecutor->executeUp() at /var/www/oroapp/vendor/oro/platform/src/Oro/Bundle/MigrationBundle/Command/LoadMigrationsCommand.php:136
 Oro\Bundle\MigrationBundle\Command\LoadMigrationsCommand->execute() at /var/www/oroapp/vendor/symfony/console/Command/Command.php:255
 Symfony\Component\Console\Command\Command->run() at /var/www/oroapp/vendor/symfony/console/Application.php:1027
 Symfony\Component\Console\Application->doRunCommand() at /var/www/oroapp/vendor/symfony/framework-bundle/Console/Application.php:97
 Symfony\Bundle\FrameworkBundle\Console\Application->doRunCommand() at /var/www/oroapp/vendor/symfony/console/Application.php:273
 Symfony\Component\Console\Application->doRun() at /var/www/oroapp/vendor/symfony/framework-bundle/Console/Application.php:83
 Symfony\Bundle\FrameworkBundle\Console\Application->doRun() at /var/www/oroapp/vendor/symfony/console/Application.php:149
 Symfony\Component\Console\Application->run() at /var/www/oroapp/bin/console:33

Any ideas how to solve this?



Solution 1:[1]

This is a known issue. The fix is under testing, the internal ticket id is BAP-20620. Here is the patch that you can apply till it is released.

https://gist.github.com/anyt/ebd097fe4986bbe4f6249d73817aefef

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Andrey Yatsenko