Improved query speed

This commit is contained in:
Michael 2018-02-01 00:29:47 +00:00
parent 03aafa8228
commit 4949be60a8
4 changed files with 6 additions and 9 deletions

View file

@ -39,7 +39,7 @@ define('FRIENDICA_PLATFORM', 'Friendica');
define('FRIENDICA_CODENAME', 'Asparagus'); define('FRIENDICA_CODENAME', 'Asparagus');
define('FRIENDICA_VERSION', '3.6-dev'); define('FRIENDICA_VERSION', '3.6-dev');
define('DFRN_PROTOCOL_VERSION', '2.23'); define('DFRN_PROTOCOL_VERSION', '2.23');
define('DB_UPDATE_VERSION', 1247); define('DB_UPDATE_VERSION', 1248);
define('NEW_UPDATE_ROUTINE_VERSION', 1170); define('NEW_UPDATE_ROUTINE_VERSION', 1170);
/** /**

View file

@ -1,6 +1,6 @@
-- ------------------------------------------ -- ------------------------------------------
-- Friendica 3.6-dev (Asparagus) -- Friendica 3.6-dev (Asparagus)
-- DB_UPDATE_VERSION 1246 -- DB_UPDATE_VERSION 1248
-- ------------------------------------------ -- ------------------------------------------
@ -982,7 +982,7 @@ CREATE TABLE IF NOT EXISTS `thread` (
INDEX `uid_created` (`uid`,`created`), INDEX `uid_created` (`uid`,`created`),
INDEX `uid_commented` (`uid`,`commented`), INDEX `uid_commented` (`uid`,`commented`),
INDEX `uid_wall_created` (`uid`,`wall`,`created`), INDEX `uid_wall_created` (`uid`,`wall`,`created`),
INDEX `private_wall_commented` (`private`,`wall`,`commented`) INDEX `private_wall_origin_commented` (`private`,`wall`,`origin`,`commented`)
) DEFAULT COLLATE utf8mb4_general_ci; ) DEFAULT COLLATE utf8mb4_general_ci;
-- --

View file

@ -183,14 +183,11 @@ function community_content(App $a, $update = 0)
function community_getitems($start, $itemspage, $content) function community_getitems($start, $itemspage, $content)
{ {
if ($content == 'local') { if ($content == 'local') {
$r = dba::p("SELECT " . item_fieldlists() . " FROM `thread` $r = dba::p("SELECT `item`.`uri`, `item`.`author-link` FROM `thread`
INNER JOIN `user` ON `user`.`uid` = `thread`.`uid` AND NOT `user`.`hidewall` INNER JOIN `user` ON `user`.`uid` = `thread`.`uid` AND NOT `user`.`hidewall`
INNER JOIN `item` ON `item`.`id` = `thread`.`iid` INNER JOIN `item` ON `item`.`id` = `thread`.`iid`
AND `item`.`allow_cid` = '' AND `item`.`allow_gid` = ''
AND `item`.`deny_cid` = '' AND `item`.`deny_gid` = ''" .
item_joins() . " AND `contact`.`self`
WHERE `thread`.`visible` AND NOT `thread`.`deleted` AND NOT `thread`.`moderated` WHERE `thread`.`visible` AND NOT `thread`.`deleted` AND NOT `thread`.`moderated`
AND NOT `thread`.`private` AND `thread`.`wall` AND NOT `thread`.`private` AND `thread`.`wall` AND `thread`.`origin`
ORDER BY `thread`.`commented` DESC LIMIT " . intval($start) . ", " . intval($itemspage) ORDER BY `thread`.`commented` DESC LIMIT " . intval($start) . ", " . intval($itemspage)
); );
return dba::inArray($r); return dba::inArray($r);

View file

@ -1686,7 +1686,7 @@ class DBStructure
"uid_created" => ["uid","created"], "uid_created" => ["uid","created"],
"uid_commented" => ["uid","commented"], "uid_commented" => ["uid","commented"],
"uid_wall_created" => ["uid","wall","created"], "uid_wall_created" => ["uid","wall","created"],
"private_wall_commented" => ["private","wall","commented"], "private_wall_origin_commented" => ["private","wall","origin","commented"],
] ]
]; ];
$database["tokens"] = [ $database["tokens"] = [