diff options
author | marijus <mario@mariovavti.com> | 2015-01-22 22:50:38 +0100 |
---|---|---|
committer | marijus <mario@mariovavti.com> | 2015-01-22 22:50:38 +0100 |
commit | 87dcc4c145cae992d7aa009c36fa45cf543cad55 (patch) | |
tree | eaf03b48c832f7843903139d6b309b73c863acb7 | |
parent | 660ed058bf719a4545c569712a0b9244f127cc18 (diff) | |
download | volse-hubzilla-87dcc4c145cae992d7aa009c36fa45cf543cad55.tar.gz volse-hubzilla-87dcc4c145cae992d7aa009c36fa45cf543cad55.tar.bz2 volse-hubzilla-87dcc4c145cae992d7aa009c36fa45cf543cad55.zip |
possible performance improvement for sharedwithme update query
-rw-r--r-- | mod/sharedwithme.php | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/mod/sharedwithme.php b/mod/sharedwithme.php index ff93051da..baaf41f61 100644 --- a/mod/sharedwithme.php +++ b/mod/sharedwithme.php @@ -12,7 +12,7 @@ function sharedwithme_content(&$a) { $is_owner = (local_user() && (local_user() == $channel['channel_id'])); - //maintenance - see if a file got dropped and remove it systemwide + //maintenance - see if a file got dropped and remove it systemwide - this should possibly go to include/poller $x = q("SELECT * FROM item WHERE verb = '%s' AND obj_type = '%s' AND uid = %d", dbesc(ACTIVITY_UPDATE), dbesc(ACTIVITY_OBJ_FILE), @@ -26,18 +26,21 @@ function sharedwithme_content(&$a) { $object = json_decode($xx['object'],true); $hash = $object['hash']; - //If object has a mid it's an update - the inlcuded mid is the latest and should not be removed + //If object has a mid it's an update activity - the inlcuded mid is the latest and should not be removed $update = (($object['mid']) ? true : false); if($update) { $mid = $object['mid']; - $y = q("DELETE FROM item WHERE (mid != '%s' AND obj_type = '%s' AND object LIKE '%s') AND (verb = '%s' OR verb = '%s')", + unset($object['mid']); //remove mid from object to match the post activity object + + $y = q("DELETE FROM item WHERE (mid != '%s' AND obj_type = '%s') AND (object = '%s' AND verb = '%s') OR (object = '%s' AND verb = '%s')", dbesc($mid), dbesc(ACTIVITY_OBJ_FILE), - dbesc('%"hash":"' . $hash . '"%'), + dbesc(json_encode($object)), dbesc(ACTIVITY_POST), + dbesc($xx['object']), dbesc(ACTIVITY_UPDATE) ); |