What files are safe to put on ephemeral storage?

I have to develop in a virtualized environment with my home directory on NFS, which also has a very aggressive backup policy that expodes if you use the filesystem for things like temporary compilation artifacts. Therefore I need to move some of the files currently written to ~/.CLion12 to somewhere not on a network mount. Unfortunately, the only other place I have to write files are ephemeral directories like /tmp.

Would it be safe to locate the entire ~/.CLion12/system directory on ephemeral storage that may be deleted when CLion isn't running?
If not, which subdirectories will work? I'm most interested in moving index, caches and cmake as they seem to have the most churn.

Also is there a setting to do this in CLion, or should I just sym-link those directories (and start CLion with a shell script that makes sure the directory exists before starting)?

Comment actions Permalink

Daniel, ~/.CLion12/system folder contains all IDE caches and internal data together with local history.
It's totaly OK to change the folder location, but keep in mind that deleting the caches will have significant performance impact, and more importantly you'll lose the local history.

Comment actions Permalink

Thanks, this solution has been working well for me. Having to rebuild the cache from scratch on reboots hasn't been a problem for me. I have to run "Invalidate caches and restart" semi-regularly anyway, as I frequently am changing git branches, submodules, etc at the command line and CLion understandably gets confused when source and cmake files are changing out from under it.


Please sign in to leave a comment.