diff options
author | Max Kostikov <max@kostikov.co> | 2019-04-28 20:59:53 +0200 |
---|---|---|
committer | Max Kostikov <max@kostikov.co> | 2019-04-28 20:59:53 +0200 |
commit | 0cecfceb14083141da389b7cc1e413ba5d5ca6d7 (patch) | |
tree | 018e6b20a459f2eec771e89db3b758656b3f25ee | |
parent | d3ce91bd8928b55d9be501d3cf140b3f5e6a7e91 (diff) | |
parent | 405e07f0a232445e179e2df821e77007f3b6d33d (diff) | |
download | volse-hubzilla-0cecfceb14083141da389b7cc1e413ba5d5ca6d7.tar.gz volse-hubzilla-0cecfceb14083141da389b7cc1e413ba5d5ca6d7.tar.bz2 volse-hubzilla-0cecfceb14083141da389b7cc1e413ba5d5ca6d7.zip |
Merge branch 'sql_fixes' into 'dev'
possible sql performance improvement
See merge request hubzilla/core!1611
-rw-r--r-- | Zotlabs/Module/Channel.php | 18 | ||||
-rwxr-xr-x | include/items.php | 2 |
2 files changed, 8 insertions, 12 deletions
diff --git a/Zotlabs/Module/Channel.php b/Zotlabs/Module/Channel.php index d4ef94e06..144c2472a 100644 --- a/Zotlabs/Module/Channel.php +++ b/Zotlabs/Module/Channel.php @@ -46,14 +46,14 @@ class Channel extends Controller { $channel = App::get_channel(); if((local_channel()) && (argc() > 2) && (argv(2) === 'view')) { - $which = $channel['channel_address']; - $profile = argv(1); - } + $which = $channel['channel_address']; + $profile = argv(1); + } $channel = channelx_by_nick($which); - if(! $channel) { - http_status_exit(404, 'Not found'); - } + if(! $channel) { + http_status_exit(404, 'Not found'); + } // handle zot6 channel discovery @@ -310,10 +310,6 @@ class Channel extends Controller { $sql_extra2 .= protect_sprintf(sprintf(" AND item.created >= '%s' ", dbesc(datetime_convert(date_default_timezone_get(),'',$datequery2)))); } - if($datequery || $datequery2) { - $sql_extra2 .= " and item.item_thread_top != 0 "; - } - if($order === 'post') $ordering = "created"; else @@ -342,7 +338,7 @@ class Channel extends Controller { AND (abook.abook_blocked = 0 or abook.abook_flags is null) AND item.item_wall = 1 AND item.item_thread_top = 1 $sql_extra $sql_extra2 - ORDER BY $ordering DESC $pager_sql ", + ORDER BY $ordering DESC, item_id $pager_sql ", intval(App::$profile['profile_uid']) ); } diff --git a/include/items.php b/include/items.php index c08deb3a0..95b696034 100755 --- a/include/items.php +++ b/include/items.php @@ -4278,7 +4278,7 @@ function items_fetch($arr,$channel = null,$observer_hash = null,$client_mode = C if($arr['mid']) $sql_options .= " and parent_mid = '" . dbesc($arr['mid']) . "' "; - $sql_extra = " AND item.parent IN ( SELECT parent FROM item WHERE item_thread_top = 1 $sql_options $item_normal ) "; + $sql_extra = " AND item.parent IN ( SELECT parent FROM item WHERE $item_uids and item_thread_top = 1 $sql_options $item_normal ) "; if($arr['since_id']) $sql_extra .= " and item.id > " . $since_id . " "; |