From 4b5f4f4ed319790fe7f0729560616b55c4e64715 Mon Sep 17 00:00:00 2001 From: chris Date: Mon, 11 Sep 2006 04:14:18 +0200 Subject: parser caching update This patch primarily updates p_cached_xhtml() and p_cached_instructions() to allow their caching logic to be surrounded by an event trigger. p_cached_xhtml() has been rewritten as the more general p_cached_output() to support other render output formats besides 'xhtml'. All calls to p_cached_xhtml() have been changed to refer to the new function. New event: name: PARSER_CACHE_USE data: cache object (see below) action: determine if cache file can be used preventable: yes result: bool, true to use cache file, false otherwise Cache operations have been generalised in a new class, cache, extended to cache_parser, cache_renderer & cache_instructions. Details can be found in inc/cache.php For handling of above event, key properties are: - page, if present the wiki page id, may not always be present, e.g. when called for locale xhtml files - file, source file - mode, renderer mode (e.g. 'xhtml') or 'i' for instructions Other changes: - cache class counts cache hits against attempts, results are stored in {cache_dir}/cache_stats.txt - adds metadata dependency to renderer page cache - replaces purgefile dependency for renderer cache with metadata 'relation references' (internal link) dependency for wiki pages only darcs-hash:20060911021418-9b6ab-19601ed194b8c8e45236ab72c3e23d78bf777e6c.gz --- inc/fulltext.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'inc/fulltext.php') diff --git a/inc/fulltext.php b/inc/fulltext.php index 94cc947e7..4aeb622e2 100644 --- a/inc/fulltext.php +++ b/inc/fulltext.php @@ -119,7 +119,7 @@ function ft_backlinks($id){ // check instructions for matching links foreach($docs as $match){ /* - // orig code, examine each page's instruction list +// orig code, examine each page's instruction list $instructions = p_cached_instructions(wikiFN($match),true); if(is_null($instructions)) continue; @@ -137,7 +137,7 @@ function ft_backlinks($id){ } } */ -// now with metadata +// now with metadata (metadata relation reference links are already resolved) $links = p_get_metadata($match,"relation references"); if (isset($links[$id])) $result[] = $match; } -- cgit v1.2.3