Search code examples
phplinuxubuntufile-existsclear-cache

PHP: file_exists and clearcachestat give wrong result until server reboot


I have read all the other questions concerning this, but my case is different.

I do have a local NAS filesystem which is mounted to linux (Ubuntu 14.04 server).

If I run a file_exists() with a prior clearcachestat() after some manual moving of files, it will produce wrong results until I restart linux.

A restart of the apache is not working, I have to do a complete restart.

I do not have memcached or APC installed.

Any ideas why clearcachestat is not working?

Where else could it be cached?


Solution

  • I think I know where the problem comes from: As said in my question I do some manual moves of files (via OSX). I just checked what happens if I let PHP move the files. That works as expected. I then tried to move files via FTP, that works too and file_exist returns the values correctly. So I now returned to my "manual move of files" which I did on OSX by drag and drop files on the same mounted drive via Finder. And there is the problem: If I do a copy/paste and then delete original file from the filesystem, all is fine. But drag and drop on OSX 10.10 it obviously something different, because then the file_exist is not working. I can live with this right now, just avoiding drag and drop on that drive. But of course this does not solve the problem. As I have now proven that this has nothing to do with php or clearstatcache, this answer can be closed. I will reopen a new question about this drag and drop behaviour on OSX. Thanks Marc B for helping...