From: Lars Hjemli Date: Mon, 11 Dec 2006 08:33:36 GMT Subject: Re: [ANNOUNCE] CGit v0.1-pre Message-ID: <8c5c35580612110033y4f6260c9xffeaf4457f4ead21@mail.gmail.com> In-Reply-To: On 12/11/06, Linus Torvalds wrote: > you really want to re-check the existence after you got the lock, > otherwise you would race with somebody else that got the lock, generated > the data, and then unlocked (and you got the lock _after_ the data was > generated, so now you generate it unnecessarily). Yes, you're right. Thanks for noticing. But this also applies to the case where the cachefile has expired, right? In that case, after getting the lock, I have to recheck that the cachefile is _still_ expired. Anyway, I must say I find it rather unlikely for these cases to occur (frequently) in real life. That would seem to imply that the caching isn't really needed at all. > > As a side note: how do you release your caches? > Simple timeouts (time()-stat.st_mtime), depending on what kind of page was requested. If anyone cares about invalid cache content (branch head moving), relevant cachefiles can be deleted with an update-hook. --