aboutsummaryrefslogtreecommitdiffstats
path: root/Zotlabs
diff options
context:
space:
mode:
Diffstat (limited to 'Zotlabs')
-rw-r--r--Zotlabs/Daemon/Notifier.php10
-rw-r--r--Zotlabs/Lib/Activity.php9
-rw-r--r--Zotlabs/Lib/Libsync.php10
3 files changed, 19 insertions, 10 deletions
diff --git a/Zotlabs/Daemon/Notifier.php b/Zotlabs/Daemon/Notifier.php
index f51dfab28..de8597081 100644
--- a/Zotlabs/Daemon/Notifier.php
+++ b/Zotlabs/Daemon/Notifier.php
@@ -79,10 +79,7 @@ class Notifier {
static public $encoded_item = null;
static public $channel = null;
static public $private = false;
- // $fragment can contain additional info to omit de-duplication in the queueworker.
- // E.g. if an item is updated many times in a row from different sources (multiple vote updates) the
- // update source mid or a timestamp or random string can be added.
- static public $fragment = null;
+
static public function run($argc, $argv) {
@@ -107,7 +104,6 @@ class Notifier {
self::$encoded_item = null;
self::$channel = null;
self::$private = false;
- self::$fragment = null;
$sys = get_sys_channel();
$normal_mode = true;
@@ -233,8 +229,6 @@ class Notifier {
// Fetch the target item
- self::$fragment = $argv[3] ?? '';
-
$r = q("SELECT * FROM item WHERE id = %d AND parent != 0",
intval($item_id)
);
@@ -701,7 +695,7 @@ class Notifier {
// This wastes a process if there are no delivery hooks configured, so check this before launching the new process
$x = q("select * from hook where hook = 'notifier_normal'");
if ($x) {
- Master::Summon(['Deliver_hooks', $target_item['id'], self::$fragment]);
+ Master::Summon(['Deliver_hooks', $target_item['id']]);
}
}
diff --git a/Zotlabs/Lib/Activity.php b/Zotlabs/Lib/Activity.php
index 4a14b1ba1..1a1031909 100644
--- a/Zotlabs/Lib/Activity.php
+++ b/Zotlabs/Lib/Activity.php
@@ -2183,7 +2183,14 @@ class Activity {
if ($u) {
dbq("COMMIT");
- Master::Summon(['Notifier', 'wall-new', $item['id']/* , $post['mid'] trick queueworker de-duplication */ ]);
+
+ if ($multi) {
+ // wait some seconds for possible multiple answers to be processed
+ // before calling the notifier
+ sleep(3);
+ }
+
+ Master::Summon(['Notifier', 'wall-new', $item['id']]);
return true;
}
diff --git a/Zotlabs/Lib/Libsync.php b/Zotlabs/Lib/Libsync.php
index f844c63b5..19361c4ae 100644
--- a/Zotlabs/Lib/Libsync.php
+++ b/Zotlabs/Lib/Libsync.php
@@ -862,7 +862,9 @@ class Libsync {
);
}
- // update connection timestamp if this is the site we're talking to
+ // Update connection timestamp if this is the site we're talking to.
+ // Also mark all entries from the current site with different sitekeys
+ // deleted (the site has been re-installed)
// This only happens when called from import_xchan
$current_site = false;
@@ -876,6 +878,12 @@ class Libsync {
intval($r[0]['hubloc_id']),
dbesc($t)
);
+
+ q("update hubloc set hubloc_error = 1, hubloc_deleted = 1 where hubloc_url = '%s' and hubloc_sitekey != '%s'",
+ dbesc($r[0]['hubloc_url']),
+ dbesc($r[0]['hubloc_sitekey'])
+ );
+
$current_site = true;
}