Merge branch 'sql_fixes' into 'dev'
possible sql performance improvement See merge request hubzilla/core!1611
This commit is contained in:
commit
0cecfceb14
@ -46,14 +46,14 @@ class Channel extends Controller {
|
|||||||
$channel = App::get_channel();
|
$channel = App::get_channel();
|
||||||
|
|
||||||
if((local_channel()) && (argc() > 2) && (argv(2) === 'view')) {
|
if((local_channel()) && (argc() > 2) && (argv(2) === 'view')) {
|
||||||
$which = $channel['channel_address'];
|
$which = $channel['channel_address'];
|
||||||
$profile = argv(1);
|
$profile = argv(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
$channel = channelx_by_nick($which);
|
$channel = channelx_by_nick($which);
|
||||||
if(! $channel) {
|
if(! $channel) {
|
||||||
http_status_exit(404, 'Not found');
|
http_status_exit(404, 'Not found');
|
||||||
}
|
}
|
||||||
|
|
||||||
// handle zot6 channel discovery
|
// 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))));
|
$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')
|
if($order === 'post')
|
||||||
$ordering = "created";
|
$ordering = "created";
|
||||||
else
|
else
|
||||||
@ -342,7 +338,7 @@ class Channel extends Controller {
|
|||||||
AND (abook.abook_blocked = 0 or abook.abook_flags is null)
|
AND (abook.abook_blocked = 0 or abook.abook_flags is null)
|
||||||
AND item.item_wall = 1 AND item.item_thread_top = 1
|
AND item.item_wall = 1 AND item.item_thread_top = 1
|
||||||
$sql_extra $sql_extra2
|
$sql_extra $sql_extra2
|
||||||
ORDER BY $ordering DESC $pager_sql ",
|
ORDER BY $ordering DESC, item_id $pager_sql ",
|
||||||
intval(App::$profile['profile_uid'])
|
intval(App::$profile['profile_uid'])
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -4278,7 +4278,7 @@ function items_fetch($arr,$channel = null,$observer_hash = null,$client_mode = C
|
|||||||
if($arr['mid'])
|
if($arr['mid'])
|
||||||
$sql_options .= " and parent_mid = '" . dbesc($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'])
|
if($arr['since_id'])
|
||||||
$sql_extra .= " and item.id > " . $since_id . " ";
|
$sql_extra .= " and item.id > " . $since_id . " ";
|
||||||
|
Reference in New Issue
Block a user