diff --git a/src/Wallabag/CoreBundle/Command/InstallCommand.php b/src/Wallabag/CoreBundle/Command/InstallCommand.php index 1ea01cc81..d29f177e6 100644 --- a/src/Wallabag/CoreBundle/Command/InstallCommand.php +++ b/src/Wallabag/CoreBundle/Command/InstallCommand.php @@ -378,7 +378,7 @@ class InstallCommand extends Command $databaseName = $connection->getDatabase(); try { - $schemaManager = $connection->getSchemaManager(); + $schemaManager = $connection->createSchemaManager(); } catch (\Exception $exception) { // mysql & sqlite if (false !== strpos($exception->getMessage(), sprintf("Unknown database '%s'", $databaseName))) { @@ -421,7 +421,7 @@ class InstallCommand extends Command */ private function isSchemaPresent() { - $schemaManager = $this->entityManager->getConnection()->getSchemaManager(); + $schemaManager = $this->entityManager->getConnection()->createSchemaManager(); return \count($schemaManager->listTableNames()) > 0 ? true : false; } diff --git a/src/Wallabag/CoreBundle/Event/Subscriber/SQLiteCascadeDeleteSubscriber.php b/src/Wallabag/CoreBundle/Event/Subscriber/SQLiteCascadeDeleteSubscriber.php index 4b9d5c243..9a1e05e73 100644 --- a/src/Wallabag/CoreBundle/Event/Subscriber/SQLiteCascadeDeleteSubscriber.php +++ b/src/Wallabag/CoreBundle/Event/Subscriber/SQLiteCascadeDeleteSubscriber.php @@ -40,7 +40,7 @@ class SQLiteCascadeDeleteSubscriber implements EventSubscriber */ public function preRemove(LifecycleEventArgs $args) { - $entity = $args->getEntity(); + $entity = $args->getObject(); if (!$this->doctrine->getConnection()->getDatabasePlatform() instanceof SqlitePlatform || !$entity instanceof Entry) { return; diff --git a/src/Wallabag/ImportBundle/Command/ImportCommand.php b/src/Wallabag/ImportBundle/Command/ImportCommand.php index de2a8994a..9e4e11c1f 100644 --- a/src/Wallabag/ImportBundle/Command/ImportCommand.php +++ b/src/Wallabag/ImportBundle/Command/ImportCommand.php @@ -2,6 +2,8 @@ namespace Wallabag\ImportBundle\Command; +use Doctrine\DBAL\Driver\Middleware; +use Doctrine\DBAL\Logging\Middleware as LoggingMiddleware; use Doctrine\ORM\EntityManagerInterface; use Symfony\Component\Config\Definition\Exception\Exception; use Symfony\Component\Console\Command\Command; @@ -99,7 +101,11 @@ class ImportCommand extends Command } // Turning off doctrine default logs queries for saving memory - $this->entityManager->getConnection()->getConfiguration()->setSQLLogger(null); + $middlewares = $this->entityManager->getConnection()->getConfiguration()->getMiddlewares(); + $middlewaresWithoutLogging = array_filter($middlewares, function (Middleware $middleware) { + return !$middleware instanceof LoggingMiddleware; + }); + $this->entityManager->getConnection()->getConfiguration()->setMiddlewares($middlewaresWithoutLogging); if ($input->getOption('useUserId')) { $entityUser = $this->userRepository->findOneById($input->getArgument('username'));