List for cgit developers and users
 help / color / mirror / Atom feed
From: john at keeping.me.uk (John Keeping)
Subject: unexpected cache issue when http errors
Date: Tue, 31 Mar 2015 19:39:19 +0100	[thread overview]
Message-ID: <20150331183919.GB2248@serenity.lan> (raw)
In-Reply-To: <551984AF.6020203@technicolor.com>

On Mon, Mar 30, 2015 at 07:15:27PM +0200, Nicolas Dely wrote:
> I would like to share an unexpected cache behaviour with this list and 
> discuss about a solution.
> 
> Indeed we are using cgit to provide a web interface to our internal user 
> and also to provide file to our reviewboard server.
> 
> We are experiencing some cache issue on static pages when data are not 
> pushed yet to server but reviewboard tries to access these 
> files/repositories. Cache is adding even 404, 401 or 500 error for 
> static page, we can workaround this issue after reducing/setting static 
> cache issue but it looks not very useful to cache http errors.
> 
> Do you think it is possible to only cache when HTTP is 200 OK? Other ideas?

I don't think it will be easy to change the behaviour to cache only on
200 responses, and I'm not sure it's desirable to do so since the
process of determining that a result is an error may involve significant
work (e.g. loading packed refs or pack indexes).

I can see an argument for changing the default for "cache-static-ttl" to
a positive value, so that if we do cache an error result it will
eventually time out without needing another page to be written into that
cache slot, but I'm not sure I understand how you reviewboard server can
access files that have not yet been pushed to the Git server.  If you're
reviewing committed changes, shouldn't the review be posted by a hook on
the server, which would ensure that the commits are available before
reviewboard knows about them?


  reply	other threads:[~2015-03-31 18:39 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-30 17:15 nicolas.dely
2015-03-31 18:39 ` john [this message]
2015-04-01 14:25   ` nicolas.dely

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150331183919.GB2248@serenity.lan \
    --to=cgit@lists.zx2c4.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).