tome Posted September 19, 2011 Posted September 19, 2011 I have been meaning to ask about this for a long time but it kept slipping my mind. Tonight I finally got frustrated enough about it to remember... I have a remote ISY that I log into using https://myhostname.dyndns.org:443 from the Admin Console java app on MacOS (Snow Leopard or Lion). When I put host in the list, I then have to quit the app and restart it for it to be usable. That is annoying, but not the real problem I have which is that it will stay in the list of devices for a short period of time. I don't know exactly how long it takes to disappear but just sleeping the Mac overnight and then trying to use the host the next day will sometimes reveal it is gone and I have to add it back. I am running 2.8.15, perhaps this is fixed in a new revision? This has been happening since I began using the ISY (and Admin App back at 2.7.something. Tom
Michel Kohanim Posted September 19, 2011 Posted September 19, 2011 Hi Tom, This has never been brought up as an issue and thus, if a bug, it has not been fixed. In all cases, though, I strongly recommend upgrading to our official 2.8.16 release. Please note that if you have installed an SSL certificate for your ISY, you must reinstall a new one before upgrading to 2.8.16 (--> you cannot upgrade remotely). Also, please make sure you are using the correct URL for the Admin Console. For the official release, the URL is http://www.universal-devices.com/99i/admin.jnlp . With kind regards, Michel
tome Posted September 19, 2011 Author Posted September 19, 2011 Hi Tom, This has never been brought up as an issue and thus, if a bug, it has not been fixed. In all cases, though, I strongly recommend upgrading to our official 2.8.16 release. Please note that if you have installed an SSL certificate for your ISY, you must reinstall a new one before upgrading to 2.8.16 (--> you cannot upgrade remotely). Also, please make sure you are using the correct URL for the Admin Console. For the official release, the URL is http://www.universal-devices.com/99i/admin.jnlp . With kind regards, Michel Sorry I meant 2.8.16. Both ISYs I have are at 2.8.16. I believe I used this url to get the Admin Console app: http://www.universal-devices.com/99i/2.8.16/admin.jnlp but as I said this has been happening for a very long time. Is there a way to debug this? Also, this may be a feature request, when I go to one of my two ISY (either local or remote) and then exit it, the app quits. Why can't it go back to the connection screen (with the list of ISYs) so that I can connect to the other one? I have to quit the one I am using, then restart the application, then select the other device, etc... Tom
Michel Kohanim Posted September 20, 2011 Posted September 20, 2011 Hi Tom, Supporting multiple instances of Admin Console is definitely on our list and shall be done. As far as the other problem, the state of that dialog is stored in your temp directory (or what MAC considers temp). Is it at all possible that something or some program clears the user/temp directory on your MAC? With kind regards, Michel
tome Posted September 20, 2011 Author Posted September 20, 2011 Hi Tom, Supporting multiple instances of Admin Console is definitely on our list and shall be done. As far as the other problem, the state of that dialog is stored in your temp directory (or what MAC considers temp). Is it at all possible that something or some program clears the user/temp directory on your MAC? With kind regards, Michel Michel, There is no directory "user/temp". There is /tmp but I would hope nothing is stored there, being a temporary directory in unix after all means it is cleared at reboot. In fact, I just tested and a reboot will always remove the non local ISYs from the list Perhaps they ARE actually stored in /tmp? Tom
Michel Kohanim Posted September 20, 2011 Posted September 20, 2011 Hi Tom, I do apologize ... I cannot fathom why Java would use a temp directory that MAC clears upon boot up. I guess this is yet another Java/MAC issue (I side with Java on this one since). We shall have a closer look but I must confess that this does not have a high priority and it's NOT trivial: our Java code is generic and it uses standard Java properties. It would be very difficult to have a "special" case just for MAC. It's not trivial since we have had to do this "special" case in multiple places and MAC is not very Java friendly. With kind regards, Michel
tome Posted September 20, 2011 Author Posted September 20, 2011 Hi Tom, I do apologize ... I cannot fathom why Java would use a temp directory that MAC clears upon boot up. I guess this is yet another Java/MAC issue (I side with Java on this one since). We shall have a closer look but I must confess that this does not have a high priority and it's NOT trivial: our Java code is generic and it uses standard Java properties. It would be very difficult to have a "special" case just for MAC. It's not trivial since we have had to do this "special" case in multiple places and MAC is not very Java friendly. With kind regards, Michel Michel, Is it possible to get the java source code? I have a friend who suggests that there is a java platform independent call to get the location of a non-destructive temp directory which may be missing. He asked if I could show him the source.... Tom
Michel Kohanim Posted September 21, 2011 Posted September 21, 2011 Hi Tom, Yes, absolutely: System.getProperty("java.io.tmpdir"); With kind regards, Michel
tome Posted September 21, 2011 Author Posted September 21, 2011 Hi Tom, Yes, absolutely: System.getProperty("java.io.tmpdir"); Michel, Two things. One: Since /tmp is cleared on a reboot, shouldn't this data be put into the user's home directory somewhere? -Djava.io.tmpdir=/Users/home/tom/thingdir Two: http://www.thekua.com/atwork/2011/02/ja ... ac-jdk1-6/ Tom
Michel Kohanim Posted September 21, 2011 Posted September 21, 2011 Tom, I am not sure I am comfortable with setting Java temp directory to the user directory. We do have other state information which we store in the temp directory as they should be. As I mentioned before, we use generic system wide properties that should behave the same across platforms. In the case of MAC, it does not. We will have to revisit this when we have more time. With kind regards, Michel
tome Posted September 22, 2011 Author Posted September 22, 2011 Tom, I am not sure I am comfortable with setting Java temp directory to the user directory. We do have other state information which we store in the temp directory as they should be. As I mentioned before, we use generic system wide properties that should behave the same across platforms. In the case of MAC, it does not. We will have to revisit this when we have more time. With kind regards, Michel But if /tmp is cleared on reboot then the list of devices will never be static. That is annoying. There must be a place to store something that will live through a system reboot...? Tom Ps: My friend said: "If an application needs to store persistent data, ie. that needs to be around the next time it runs regardless of reboots, it should store it in ~/Library/Application Support if it is for just that user, or /Library/Application Support if for all users. I should note that calling tmpdir is not something that should be done for persistent storage. Tmpdir, as its name suggests, is for temporary data that is typically invalidated after the application stops running and can freely be deleted by the system any time (such as reboots)."
Recommended Posts