Fix utf8mb4 on vendor tables

When creating the schema for test these tables use default length for
string: 255. Which fail when using utf8mb4.

> Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes

Also move the `setKeepStaticConnections` in before and after class to
avoid:

> SAVEPOINT DOCTRINE2_SAVEPOINT_2 does not exist

See https://github.com/dmaicher/doctrine-test-bundle#troubleshooting
This commit is contained in:
Jeremy Benoist
2018-11-28 20:26:18 +01:00
parent 9a8a1bdfdb
commit 877787e5fe
6 changed files with 107 additions and 24 deletions

View File

@ -2,26 +2,14 @@
namespace Application\Migrations;
use Doctrine\DBAL\Migrations\AbstractMigration;
use Doctrine\DBAL\Schema\Schema;
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
/**
* Add archived_at column and set its value to updated_at for is_archived entries.
*/
class Version20180405182455 extends AbstractMigration implements ContainerAwareInterface
class Version20180405182455 extends WallabagMigration
{
/**
* @var ContainerInterface
*/
private $container;
public function setContainer(ContainerInterface $container = null)
{
$this->container = $container;
}
/**
* @param Schema $schema
*/
@ -60,9 +48,4 @@ class Version20180405182455 extends AbstractMigration implements ContainerAwareI
$entryTable->dropColumn('archived_at');
}
private function getTable($tableName)
{
return $this->container->getParameter('database_table_prefix') . $tableName;
}
}