Change .felix OSGi cache directory

7 次查看(过去 30 天)
When we use the figure command in Matlab there is a directory created called /tmp/.felix/ and our /tmp file system is very small so sometimes it fills up causing errors. Is there a way to direct Matlab to create that directory somewhere else?
  11 个评论
Gregory
Gregory 2018-4-10
Is there any reason to keep this files not delete. Perhaps making the delete automatic?
Michael Robbert
Michael Robbert 2018-4-10
Gregory, That is a good question for the folks at Matlab. I presume, given the name implies it is a cache, that there is some performance benefit for keeping it around at least within a single session. While looking it up using Google I found references to its use outside of Matlab and if I recall correctly some people indicated that it had long term usefulness, but in our use case which is a shared cluster we can't have it persisting on local disks so we do clean up at the end of the users session. My original problem was that it was actually filling up a local partition thereby causing other problems.

请先登录,再进行评论。

采纳的回答

Michael Robbert
Michael Robbert 2017-11-2
I contacted support and was given a list of variables and properties that are checked in order for a valid place to put this cache along with some suggestions on how to set it up. Here is an excerpt from that response that gives the list: There are a few locations where MATLAB will try to create this cache, in order of precedence (where MATLAB will try the next option if the specified variable is not set or the location which it specifies is not writable by the user who is running MATLAB):
- Directory specified by environment variable TMPDIR
- Directory specified by environment variable TMP
- Directory specified by environment variable TEMP
- Directory specified by Java property java.io.tmpdir
- Directory specified by environment variable HOME
- Directory specified by Java property user.home
Changing the TMPDIR variable to a different path would resolve the issue. However I would not suggest doing that as it might temper with the other processes that use the /tmp to store the temporary files.
What I would suggest is setting this variable 'TMPDIR' only in a given MATLAB session. This can be don by setting this variable in "startup.m" and resetting it back in "finish.m".
  1 个评论
Walter Roberson
Walter Roberson 2017-11-2
If you set it using setenv() then it only applies to the current process and children, and there would be no need to set it back in finish.m

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Environment and Settings 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by