From f23596421de556fc907a261a458352c3c0e8fdc5 Mon Sep 17 00:00:00 2001 From: Michael Date: Thu, 8 Mar 2018 21:04:11 +0000 Subject: [PATCH] Avoid SQL errors due to duplicate entries in the "participation" table --- src/Protocol/Diaspora.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Protocol/Diaspora.php b/src/Protocol/Diaspora.php index 1578edb920..384a019587 100644 --- a/src/Protocol/Diaspora.php +++ b/src/Protocol/Diaspora.php @@ -2211,7 +2211,10 @@ class Diaspora } logger('Received participation for ID: '.$item['id'].' - Contact: '.$contact_id.' - Server: '.$server, LOGGER_DEBUG); - dba::insert('participation', ['iid' => $item['id'], 'cid' => $contact_id, 'fid' => $person['id'], 'server' => $server]); + + if (!dba::exists('participation', ['iid' => $item['id'], 'server' => $server])) { + dba::insert('participation', ['iid' => $item['id'], 'cid' => $contact_id, 'fid' => $person['id'], 'server' => $server]); + } // Send all existing comments and likes to the requesting server $comments = dba::p("SELECT `item`.`id`, `item`.`verb`, `contact`.`self`