Re: Bug? ccache: error: Could not stat <cache file> (permission denied when creating?): No such file or directory
Michael Ellerman <[email protected]>
| Newsgroups | gmane.comp.compilers.ccache |
|---|---|
| Message-ID | <1357524936.29452.2.camel@concordia> |
On Sun, 2013-01-06 at 17:43 +0100, Joel Rosdahl wrote: > On 7 December 2012 03:51, Michael Ellerman <[email protected]> wrote: > > [...] > > The error we see is like: > > > > ccache: error: Could not stat /scratch/kisskb/ccache/0/d/01dfc7d17f46f8d9b361ba9323e8c9-1921690.o.tmp.stdout.Sprygo.8282 > > (permission denied when creating?): No such file or directory > > [...] > > So basically 11295 is running cleanup_dir() and deleting files that are > > still being written to. The full log shows 11295 deleting lots of files. > > > > From a brief look at the code I don't see any logic which would prevent > > this from happening, other than that usually there is enough space in > > the cache so that only old files are deleted. > > > > I'm not sure what the best way to avoid this is. The old logic of > > noticing the stdout is missing and calling failed() at least doesn't > > break the build. > > Thanks for the bug report and analysis! > > I have addressed the issue by detecting failure to create the > temporary stdout/stderr files earlier so that no fatal() call is > needed for the cleanup scenario. The fix will be included in v3.1.9. Thanks Joel. I'll give it a test in the next week or so. Obviously we also need to make our cache bigger, but I'll hold off doing that until I've confirmed your fix works. cheers