summaryrefslogtreecommitdiff
path: root/tests/t0020-validate-cache.sh (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Redesign the caching layerLars Hjemli2008-04-281-0/+67
The original caching layer in cgit has no upper bound on the number of concurrent cache entries, so when cgit is traversed by a spider (like the googlebot), the cache might end up filling your disk. Also, if any error occurs in the cache layer, no content is returned to the client. This patch redesigns the caching layer to avoid these flaws by * giving the cache a bound number of slots * disabling the cache for the current request when errors occur The cache size limit is implemented by hashing the querystring (the cache lookup key) and generating a cache filename based on this hash modulo the cache size. In order to detect hash collisions, the full lookup key (i.e. the querystring) is stored in the cache file (separated from its associated content by ascii 0). The cache filename is the reversed 8-digit hexadecimal representation of hash(key) % cache_size which should make the filesystem lookup pretty fast (if directory content is indexed/sorted); reversing the representation avoids the problem where all keys have equal prefix. There is a new config option, cache-size, which sets the upper bound for the cache. Default value for this option is 0, which has the same effect as setting nocache=1 (hence nocache is now deprecated). Included in this patch is also a new testfile which verifies that the new option works as intended. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
n class='insertions'>+6 2012-02-23Remove useless aliasesRené Neumann1-4/+0 2012-02-23-mRené Neumann1-14/+17 2012-02-23Unify cci outputRené Neumann1-10/+15 2012-02-23Make the stg-version into a variable ... no need to run python multiple timesRené Neumann1-6/+5 2012-02-23Port cci to new stgit versionRené Neumann2-4/+19 2012-02-23Do not use the find-theorems-form in PGRené Neumann1-1/+1 2012-01-30ebuild_error_on_trailing_whitespace is deprecatedRené 'Necoro' Neumann1-1/+0 2012-01-10Add 'block' command to mako syntaxRené 'Necoro' Neumann1-2/+2 2012-01-10Changes needed for haddock browser.René 'Necoro' Neumann1-1/+2 2011-12-09Update haskellmodeRené Neumann1-2/+1 2011-12-09Update haskellmodeRené Neumann5-82/+228 2011-11-21Set Poly/ML as the default SML interpreter.René Neumann1-0/+3 2011-11-21Added support for jedit.René Neumann2-4/+11 2011-11-16Make 'hg k' work similar to 'git k'René 'Necoro' Neumann1-0/+3 2011-10-14'tabgroup' -> 'tabgroups'René 'Necoro' Neumann1-1/+1 2011-10-14Switch from openoffice alias to libreoffice (ooffice -> soffice)René 'Necoro' Neumann1-2/+2 2011-10-14Make the quotes in ProofGeneral to be nearly invisibleRené Neumann1-1/+1 2011-08-23Disable hightlighting of the domain in the FF urlbarRené Neumann1-0/+3 2011-08-12Enhance IE scriptRené Neumann1-6/+7 2011-08-11BlaRené 'Necoro' Neumann1-0/+2 2011-08-11Local fontsRené 'Necoro' Neumann1-13/+22 2011-08-11Better inconsolata thingsRené Neumann4-4/+13 2011-08-10Moved some functions to their own filesRené Neumann3-124/+120 2011-08-10More advanced IE scriptRené Neumann2-1/+74 2011-08-10Inconsolata also in emacsRené Neumann1-1/+1 2011-08-10Better vim fontsRené 'Necoro' Neumann1-1/+1 2011-08-09ooffice aliasRené Neumann1-0/+2 2011-08-09Update the needed hg-extensions.René Neumann1-1/+2 2011-06-08gtkrc stuff for Qt-Gtk-StyleRené 'Necoro' Neumann2-0/+8 2011-06-08Updated fonts.conf to work better on lcdsRené 'Necoro' Neumann1-17/+6