]> git.mxchange.org Git - friendica.git/blobdiff - mod/community.php
Speed improvements of queries
[friendica.git] / mod / community.php
index 27a9e219416abc0264b23f21f845c32bf5915156..dbf4c82beb8eb4a581e2757394830d4093017a71 100644 (file)
@@ -70,12 +70,13 @@ function community_content(&$a, $update = 0) {
                `contact`.`network`, `contact`.`thumb`, `contact`.`self`, `contact`.`writable`, 
                `contact`.`id` AS `cid`, `contact`.`uid` AS `contact-uid`,
                `user`.`nickname`, `user`.`hidewall`
-               FROM `item` FORCE INDEX (`received`) LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
+               FROM `item` FORCE INDEX (`received`, `wall`) LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
                LEFT JOIN `user` ON `user`.`uid` = `item`.`uid`
                WHERE `item`.`visible` = 1 AND `item`.`deleted` = 0 and `item`.`moderated` = 0
                AND `item`.`allow_cid` = ''  AND `item`.`allow_gid` = ''
                AND `item`.`deny_cid`  = '' AND `item`.`deny_gid`  = '' 
-               AND `item`.`private` = 0 AND `item`.`wall` = 1 AND `user`.`hidewall` = 0
+               AND `item`.`private` = 0 AND `item`.`wall` = 1 AND `item`.`id` = `item`.`parent`
+               AND `user`.`hidewall` = 0
                AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0 AND `contact`.`self`
                ORDER BY `received` DESC LIMIT %d, %d ",
                intval($a->pager['start']),
@@ -83,6 +84,8 @@ function community_content(&$a, $update = 0) {
 
        );
 //             group by `item`.`uri`
+//             AND `item`.`private` = 0 AND `item`.`wall` = 1 AND `item`.`id` = `item`.`parent`
+//             AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0 AND `contact`.`self`
 
        if(! count($r)) {
                info( t('No results.') . EOL);