[PATCH] Skip cache slot when time-to-live is zero

Jason A. Donenfeld Jason at zx2c4.com
Thu Feb 20 21:03:51 CET 2014


s/this type of pages/this type of page/g

--
Sent from my telephone.
 On Feb 20, 2014 8:59 PM, "Lukas Fleischer" <cgit at cryptocrack.de> wrote:

> If time-to-live is set to zero, we don't need to regenerate the cache
> slots on every request. Instead, just skip the caching process and
> immediately provide the dynamically generated version of the page.
> Setting time-to-live to zero is useful when you want to disable caching
> for certain pages.
>
> Signed-off-by: Lukas Fleischer <cgit at cryptocrack.de>
> ---
>  cache.c      |  2 +-
>  cgitrc.5.txt | 22 ++++++++++++++--------
>  2 files changed, 15 insertions(+), 9 deletions(-)
>
> diff --git a/cache.c b/cache.c
> index 9e7eeb0..801e63f 100644
> --- a/cache.c
> +++ b/cache.c
> @@ -343,7 +343,7 @@ int cache_process(int size, const char *path, const
> char *key, int ttl,
>         int result;
>
>         /* If the cache is disabled, just generate the content */
> -       if (size <= 0) {
> +       if (size <= 0 || ttl == 0) {
>                 fn();
>                 return 0;
>         }
> diff --git a/cgitrc.5.txt b/cgitrc.5.txt
> index a437fc4..7158c10 100644
> --- a/cgitrc.5.txt
> +++ b/cgitrc.5.txt
> @@ -61,37 +61,43 @@ cache-root::
>  cache-static-ttl::
>         Number which specifies the time-to-live, in minutes, for the cached
>         version of repository pages accessed with a fixed SHA1. Negative
> -       values have infinite ttl. Default value: -1".
> +       values have infinite ttl, zero means that the cache is disabled for
> +       this type of pages. Default value: -1".
>
>  cache-dynamic-ttl::
>         Number which specifies the time-to-live, in minutes, for the cached
>         version of repository pages accessed without a fixed SHA1. Negative
> -       values have infinite ttl. Default value: "5".
> +       values have infinite ttl, zero means that the cache is disabled
> for this
> +       type of pages. Default value: "5".
>
>  cache-repo-ttl::
>         Number which specifies the time-to-live, in minutes, for the cached
>         version of the repository summary page. Negative values have
> infinite
> -       ttl. Default value: "5".
> +       ttl, zero means that the cache is disabled for this type of pages.
> +       Default value: "5".
>
>  cache-root-ttl::
>         Number which specifies the time-to-live, in minutes, for the cached
>         version of the repository index page. Negative values have infinite
> -       ttl. Default value: "5".
> +       ttl, zero means that the cache is disabled for this type of pages.
> +       Default value: "5".
>
>  cache-scanrc-ttl::
>         Number which specifies the time-to-live, in minutes, for the result
>         of scanning a path for git repositories. Negative values have
> infinite
> -       ttl. Default value: "15".
> +       ttl, zero means that the cache is disable for this type of pages.
> +       Default value: "15".
>
>  cache-about-ttl::
>         Number which specifies the time-to-live, in minutes, for the cached
>         version of the repository about page. Negative values have infinite
> -       ttl. Default value: "15".
> +       ttl, zero means that the cache is disable for this type of pages.
> +       Default value: "15".
>
>  cache-snapshot-ttl::
>         Number which specifies the time-to-live, in minutes, for the cached
> -       version of snapshots. Negative values have infinite ttl. Default
> -       value: "5".
> +       version of snapshots. Negative values have infinite ttl, zero means
> +       that the cache is disable for this type of pages. Default value:
> "5".
>
>  cache-size::
>         The maximum number of entries in the cgit cache. Default value: "0"
> --
> 1.9.0
>
> _______________________________________________
> CGit mailing list
> CGit at lists.zx2c4.com
> http://lists.zx2c4.com/mailman/listinfo/cgit
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.zx2c4.com/pipermail/cgit/attachments/20140220/8a49b82d/attachment-0001.html>


More information about the CGit mailing list