From 13e1c5576dc8d4c27073805dfa25a00c08e4fb7d Mon Sep 17 00:00:00 2001 From: Dmytro Iosypenko <108675430+dmyios@users.noreply.github.com> Date: Wed, 28 Sep 2022 14:55:45 +0200 Subject: [PATCH] fixed issue where notification number < 0 before update (#11892) --- www/install/php/Update-21.10.11.php | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/www/install/php/Update-21.10.11.php b/www/install/php/Update-21.10.11.php index c97310ee79a..18765034ac6 100644 --- a/www/install/php/Update-21.10.11.php +++ b/www/install/php/Update-21.10.11.php @@ -29,14 +29,22 @@ try { $errorMessage = "Impossible to update 'hosts' table"; if (! str_contains(strtolower($pearDBO->getColumnType('hosts', 'notification_number')), 'bigint')) { + $pearDBO->beginTransaction(); + $pearDBO->query("UPDATE `hosts` SET `notification_number`= 0 WHERE `notification_number`< 0"); $pearDBO->query("ALTER TABLE `hosts` MODIFY `notification_number` BIGINT(20) UNSIGNED DEFAULT NULL"); } $errorMessage = "Impossible to update 'services' table"; if (! str_contains(strtolower($pearDBO->getColumnType('services', 'notification_number')), 'bigint')) { + $pearDBO->beginTransaction(); + $pearDBO->query("UPDATE `services` SET `notification_number`= 0 WHERE `notification_number`< 0"); $pearDBO->query("ALTER TABLE `services` MODIFY `notification_number` BIGINT(20) UNSIGNED DEFAULT NULL"); } } catch (\Exception $e) { + if ($pearDBO->inTransaction()) { + $pearDBO->rollBack(); + } + $centreonLog->insertLog( 4, $versionOfTheUpgrade . $errorMessage .