mainSavannah Administration - Support: sr #109257, cgit sometimes serves a stale page...


sr #109257: cgit sometimes serves a stale page for five minutes

Submitter:  Benno Schulenberg <bens>
Submitted:  Mon 13 Feb 2017 07:56:06 PM UTC
Category:  None Priority:  5 - Normal
Severity:  3 - Normal Status:  Wont Do
Privacy:  Public Assigned to:  rwp
Operating System:  None Open/Closed:  Closed
* Mandatory Fields

Add a New Comment Rich Markup

Sat 18 Feb 2017 03:01:57 AM UTC, comment #4: 

Hello Benno, Bob,

I've added this item to our "todo/wishlist" page (#28):

Since there's not much else for us to do in the short term about this,
I'm closing this ticket for now.

 - assaf

Assaf Gordon <agn>
Site Administrator
Tue 14 Feb 2017 04:51:50 PM UTC, comment #3: 

Hello Benno, Bob and all,

I'm quite certain that if you add a dummy cgi parameter,
the page will refresh, e.g.

second, regarding this:

> What would be nice to have is: that cgit invalidates the
> cache for a certain repo whenever something is pushed to that repo.

cgit seems to have a relevant feature, call "agefile":

like many other savannah issues - we have limited man-power.
So while this is highly desired feature, I'm not sure we can implement it soon
(there are few more critical things to complete in the server migration).

Hope this helps,
 - assaf

Assaf Gordon <agn>
Site Administrator
Tue 14 Feb 2017 04:15:45 PM UTC, comment #2: 

Yes, server-side caching is good -- I wasn't suggesting to disable caching.  But it becomes a problem when I look at one page, upstream does a push, I look at another page of the same repo, which has the new content, I go back to the earlier page, but it still shows the old situation.  This is puzzling and confusing.

What would be nice to have is: that cgit invalidates the cache for a certain repo whenever something is pushed to that repo.  This may be too hard to make, though, I don't know.

An alternative might be that whenever cgit receives a request for a page, it checks whether there has been a push to the relevant repo since the page was cached, and only if not, it serves the cached page.  This might be too hard to make, too, though.

Benno Schulenberg <bens>
Mon 13 Feb 2017 08:49:07 PM UTC, comment #1: 

I think this is due to beneficial caching. The cgit web interface caches data to present to the user.  This is good caching.  Previously the cgit service has been a performance problem.  Caching is a way to mitigate the performance problem.

Reloading the web page does not have any effect because that is simply your browser reloading the same page that has been cached.  It actually reinforces the benefit of the cgit cache.

Your personal working copy is no different.  You only see updates when you explicitly pull them.  You do not see every upstream update in real time.  When you want to see updates you must explicitly pull them in.  I think this is no different.

I am going to mark this as "Wont Do".  Sorry.  I will keep it open to remind me to investigate this in more detail.  But I don't think disabling caching is something we want to do.  Sorry.

Bob Proulx <rwp>
Site Administrator
Mon 13 Feb 2017 07:56:06 PM UTC, original submission:  

Since a few days, looking at cgit pages on Savannah can result in a mismatch when in the meantime a push happened.

For example, I looked at, then did a push, did a reload in my browser -- no effect.  (This always worked until a few days ago.)  But if I then look at, for example, the last commit is there.  But then going back to, the last commit is still missing.  Another reload does not help.  Only when waiting for five minutes and then doing a reload again, things will finally match.

Of course, this is a minor issue, because how often will it happen that a user is browsing through cgit just when upstream does a push?  But when it does happen... it can be rather confusing.

Benno Schulenberg <bens>


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:

No files currently attached


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by agn (Posted a comment)
  • -email is unavailable- added by rwp (Posted a comment)
  • -email is unavailable- added by bens (Submitted the item)

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.


    Follow 3 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2017-02-18 agn Open/ClosedOpen Closed
    2017-02-13 rwp StatusNone Wont Do
        Assigned toNone rwp

    Back to the top

    Powered by Savane 3.13-c373.
    Corresponding source code