From 53a9c65daa8e24c7fcff803331142b8877448301 Mon Sep 17 00:00:00 2001 From: Michael Date: Thu, 15 Oct 2020 07:40:24 +0000 Subject: [PATCH] Only set values if the uri isn't empty --- src/Worker/RepairDatabase.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Worker/RepairDatabase.php b/src/Worker/RepairDatabase.php index 655e99520b..69c667df42 100644 --- a/src/Worker/RepairDatabase.php +++ b/src/Worker/RepairDatabase.php @@ -56,9 +56,11 @@ class RepairDatabase // Ensure that all uri-id are set correctly DBA::e("UPDATE `item` INNER JOIN `item-uri` ON `item-uri`.`uri` = `item`.`uri` - SET `uri-id` = `item-uri`.`id` WHERE `item`.`uri-id` != `item-uri`.`id`"); + SET `uri-id` = `item-uri`.`id` WHERE `item`.`uri-id` != `item-uri`.`id` AND `uri` != ?", ''); DBA::e("UPDATE `item` INNER JOIN `item-uri` ON `item-uri`.`uri` = `item`.`parent-uri` - SET `parent-uri-id` = `item-uri`.`id` WHERE `item`.`parent-uri-id` != `item-uri`.`id`"); + SET `parent-uri-id` = `item-uri`.`id` WHERE `item`.`parent-uri-id` != `item-uri`.`id` AND `parent-uri` != ?", ''); + DBA::e("UPDATE `item` INNER JOIN `item-uri` ON `item-uri`.`uri` = `item`.`thr-parent` + SET `thr-parent-id` = `item-uri`.`id` WHERE `item`.`thr-parent-id` != `item-uri`.`id` AND `thr-parent` != ?", ''); // Delete orphaned data from notify table. DBA::e("DELETE FROM `notify` WHERE NOT `type` IN (1, 2, 16, 32, 512) AND NOT `iid` IN (SELECT `id` FROM `item`)");