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
Showing
- inc/cache.php 221 additions, 0 deletionsinc/cache.php
- inc/fulltext.php 2 additions, 2 deletionsinc/fulltext.php
- inc/parserutils.php 35 additions, 53 deletionsinc/parserutils.php
- lib/plugins/base.php 1 addition, 1 deletionlib/plugins/base.php
- lib/plugins/plugin/admin.php 1 addition, 1 deletionlib/plugins/plugin/admin.php
- lib/plugins/syntax.php 1 addition, 1 deletionlib/plugins/syntax.php
Loading
Please register or sign in to comment