From: Andrew Dolgov Date: Fri, 11 Nov 2011 08:34:12 +0000 (+0400) Subject: further reduce db hit on tags in viewfeed X-Git-Tag: 1.5.7~24 X-Git-Url: https://git.wh0rd.org/?a=commitdiff_plain;h=ca5133cb91c8fe450eaf6ce03a8472823a2a6e07;p=tt-rss.git further reduce db hit on tags in viewfeed --- diff --git a/functions.php b/functions.php index 4f1b81f2..fd89f509 100644 --- a/functions.php +++ b/functions.php @@ -4590,7 +4590,7 @@ return $feedlist; } - function get_article_tags($link, $id, $owner_uid = 0) { + function get_article_tags($link, $id, $owner_uid = 0, $tag_cache = false) { global $memcache; @@ -4611,10 +4611,12 @@ } else { /* check cache first */ - $result = db_query($link, "SELECT tag_cache FROM ttrss_user_entries - WHERE ref_id = '$id' AND owner_uid = " . $_SESSION["uid"]); + if ($tag_cache === false) { + $result = db_query($link, "SELECT tag_cache FROM ttrss_user_entries + WHERE ref_id = '$id' AND owner_uid = " . $_SESSION["uid"]); - $tag_cache = db_fetch_result($result, 0, "tag_cache"); + $tag_cache = db_fetch_result($result, 0, "tag_cache"); + } if ($tag_cache) { $tags = explode(",", $tag_cache); @@ -5537,10 +5539,9 @@ $tag_cache = $line["tag_cache"]; - if ($tag_cache) - $tags_str = format_tags_string(explode(",", $tag_cache), $id); - else - $tags_str = format_tags_string(get_article_tags($link, $id), $id); + $tags_str = format_tags_string( + get_article_tags($link, $id, $_SESSION["uid"], $tag_cache), + $id); $reply['content'] .= "Tags