[ccache] ccache: FATAL: Could not create xxx.o.tmp.stdout.yyy.zzz (permission denied?)

David Givone david at givone.net
Fri Nov 2 15:35:57 MDT 2012


Verify that the tmp file is unique based on the machine and user. If it
does not have the user and machine in the name it *may* be possible for a
race condition.

There was a race condition that I fixed that could occur when the cache
directory did not exist and multiple processes were trying to create it for
the first time. The fix was in a function that creates paths so it may have
been possible that a race condition could occur when any directory was
created. When the error occurred was the cache fully populated (all the
directories created)?


On Thu, Nov 1, 2012 at 4:40 PM, Lalit Chhabra <lchhabra at linuxmail.org>wrote:

> Hi,
>
>  We have deployed ccache 3.1.7 (over NFS), with the cache being shared
> amongst about 30-40 people. The cache max size is configured to be 20G. We
> primarily compile c++ files with g++, each of which take less than a couple
> of minutes to compile. This has mostly been very sucessful, except that
> every once in a while, we get the above FATAL error from ccache. (I have
> seen this 2 times, in the past 4 months that we have been using ccache.)
>
>  My initial guess was that there is some race condition between one users'
> ccache process doing a clean-up, while another users' compile is going on.
> But looking at the code, temp files have to be at least one hour old for
> them to get cleaned up.
>
>  Another odd thing that I have seen (just once so far), is that the cache
> max size got reduced to 18.8G (which seems to be close to 20G*15/16). This
> caused a lot more of the "FATAL: Could not create..." messages to appear,
> until I reset the cache size back to 20G.
>
>  I am not sure if both of these observations are related. Any ideas what
> could be going on?
>
>  Thanks,
>  Lalit Chhabra
> _______________________________________________
> ccache mailing list
> ccache at lists.samba.org
> https://lists.samba.org/mailman/listinfo/ccache
>


More information about the ccache mailing list