more profiling - cache the qcomment list so we don't have to look it up for every rendered item

This commit is contained in:
friendica 2013-02-09 04:22:11 -08:00
parent d8c667288e
commit 6022a9e9cd
2 changed files with 22 additions and 1 deletions

View file

@ -1883,6 +1883,8 @@ if(! function_exists('load_contact_links')) {
if(! $uid || x($a->contacts,'empty'))
return;
logger('load_contact_links');
$r = q("SELECT abook_id, abook_flags, abook_my_perms, abook_their_perms, xchan_hash, xchan_photo_m, xchan_name, xchan_url from abook left join xchan on abook_xchan = xchan_hash where abook_channel = %d and not (abook_flags & %d) ",
intval($uid),
intval(ABOOK_FLAG_SELF)

View file

@ -81,6 +81,9 @@ class Item extends BaseObject {
*/
public function get_template_data($alike, $dlike, $thread_level=1) {
$t1 = dba_timer();
$result = array();
$a = $this->get_app();
@ -184,10 +187,16 @@ class Item extends BaseObject {
if(strcmp(datetime_convert('UTC','UTC',$item['created']),datetime_convert('UTC','UTC','now - 12 hours')) > 0)
$indent .= ' shiny';
$t2 = dba_timer();
localize_item($item);
$t3 = dba_timer();
$body = prepare_body($item,true);
$t4 = dba_timer();
$tmp_item = array(
'template' => $this->get_template(),
@ -238,6 +247,8 @@ class Item extends BaseObject {
'thread_level' => $thread_level
);
$t5 = dba_timer();
$arr = array('item' => $item, 'output' => $tmp_item);
call_hooks('display_item', $arr);
@ -275,6 +286,14 @@ class Item extends BaseObject {
$result['flatten'] = true;
$result['threaded'] = false;
}
$t6 = dba_timer();
// profiler($t1,$t2,'t2');
// profiler($t2,$t3,'t3');
// profiler($t3,$t4,'t4');
// profiler($t4,$t5,'t5');
// profiler($t5,$t6,'t6');
// profiler($t1,$t6,'item total');
return $result;
}
@ -497,7 +516,7 @@ class Item extends BaseObject {
$a = $this->get_app();
$qc = ((local_user()) ? get_pconfig(local_user(),'qcomment','words') : null);
$qc = ((local_user()) ? get_pconfig(local_user(),'system','qcomment') : null);
$qcomment = (($qc) ? explode("\n",$qc) : null);
$comment_box = replace_macros($template,array(