Den 2018-01-29 kl. 18:59, skrev Joel Rosdahl via ccache:
> On 29 January 2018 at 07:14, Scott Bennett <> wrote:
>> Countless data base software implementations handle these situations
>> acceptably well.
> Sigh.
> I see. You're talking about a completely different model than what
> ccache currently uses, which was not clear to me when I read your
> initial description. What you seem to don't understand, or choose to
> ignore, is that ccache can't stop supporting the simple server-less
> file-based model since that would drop support for two important use
> cases:
> 1. Using ccache on a personal account without having access to a system
>    service and without having to start a personal server.
> 2. Using a shared cache on NFS.
> (For case 1, it would be feasible with a model where the client starts a
> server on demand, unless the cache is shared.)
> Why are they important? Simply because people have used ccache like that
> for many years.

We have found that use case 2 needs extending, to add a local cache
in front. Then the NFS store is only used as a "secondary cache"...

But this can be done without changing very much in ccache, and I know
I said that we would post some code for that. Will try again. :-)

> It would certainly be possible to add optional client-server backends,
> and for them I fully agree that using a centralized index is obvious,
> but that's just an entirely separate discussion as I see it.
> If we would drop support for simple file-based caches, then it would no
> longer be ccache but something else. Which would be fine, but that's
> another project. (It could of course be ccache version 4, but then I
> expect that ccache version 3 would continue living its own life, so it
> would be a separate project in practice.)

We already have such an implementation, which works fine - in parallell.
We only have to complete the work of merging the dev/memcached branch ?

By starting a memcached daemon, we get the required client/server setup.
And by using "moxi", we can have that daemon talk to a "real" database.

>> Very possibly you have the requisite knowledge/experience yourself.
> Actually yes, so you could have saved both your and my time by just
> asking something like "Have you considered using a client-server model,
> perhaps using a standard database, instead of a file-based cache?"
> instead of trying to educate me.
>> To modify ccache to use data base software is admittedly a major
>> rewriting job, so I expect such an idea to put you off, but it's a
>> project that should ultimately yield a far superior product, IMO.
> I don't disagree, but as I said, that would be another project, and I
> neither have time nor interest in that personally.

As mentioned above, it is very possible to use Couchbase for this.
It is an open source NoSQL database, from

Since ccache is talking the standard memcached protocol directly,
it doesn't even have to know that it is using a standard database!

ccache mailing list

Reply via email to