From 661ab8ac04646af3f105e330684f42a88f70b3f0 Mon Sep 17 00:00:00 2001 From: Thibaud Fabre Date: Wed, 3 Feb 2016 11:42:34 +0100 Subject: [PATCH] Only truncate users table if it exists --- .../PreSchemaUpgrade/Upgrade39Users.php | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/lib/Alchemy/Phrasea/Setup/Version/PreSchemaUpgrade/Upgrade39Users.php b/lib/Alchemy/Phrasea/Setup/Version/PreSchemaUpgrade/Upgrade39Users.php index 1ffde761ab..61d44b2f16 100644 --- a/lib/Alchemy/Phrasea/Setup/Version/PreSchemaUpgrade/Upgrade39Users.php +++ b/lib/Alchemy/Phrasea/Setup/Version/PreSchemaUpgrade/Upgrade39Users.php @@ -298,14 +298,17 @@ class Upgrade39Users implements PreSchemaUpgradeInterface $connection = $em->getConnection(); $dbPlatform = $connection->getDatabasePlatform(); $connection->beginTransaction(); - try { - $connection->query('SET FOREIGN_KEY_CHECKS=0'); - $connection->executeUpdate($dbPlatform->getTruncateTableSql($meta->getTableName())); - $connection->query('SET FOREIGN_KEY_CHECKS=1'); - $connection->commit(); - } catch (\Exception $e) { - $connection->rollback(); - throw $e; + + if ($connection->getSchemaManager()->tablesExist([ $meta->getTableName() ])) { + try { + $connection->query('SET FOREIGN_KEY_CHECKS=0'); + $connection->executeUpdate($dbPlatform->getTruncateTableSql($meta->getTableName())); + $connection->query('SET FOREIGN_KEY_CHECKS=1'); + $connection->commit(); + } catch (\Exception $e) { + $connection->rollback(); + throw $e; + } } }