Hi there,
since last Thursday, I have Java 1.6.0_29 on my Mac (came with a normal Java update, before I was running 1.6.0_26 as far as I remember).
Since this Java upate my KNIME (2.4.0 as well as 2.4.2) crashes very frequently (about every 3 minutes) when I try to open the configuration dialog of a node (no matter which node, which workflow, which workspace, which KNIME installation). I just get a spinning wheel and nothing happens anymore.
Does anybody know whether this really has something to do with the Java version and what to do in this case?
Antje
Yes it does. We tested this
Yes it does.
We tested this on 3 macs, 2x Snowleopard and one Lion, after the update of java some dialogs crash Knime.
Unfortunately there is no way to undo this java update. Sounds like this other operating system i know...
The Knime techs have been informed and are pooring over a solution.
Yepp, we are trying to
Yepp, we are trying to reproduce it and see if we can diagnoze it further. Our designated Mac user is currently out of office - so you'll need to wait until next week.
I was told by Ellert that the process just dies (so KNIME disappears) and that there is no log file (hs_err_xyz.log); though according to Antjes comment you get a spinning wheel and nothing happens. Does KNIME stay open (but freezes)? If so, can you extract a call stack from the process ($JDK_HOME/bin/jstack <PID>) and post it? Maybe that helps us to find more information on the net?
Thanks,
Bernd
First, thanks for the
First, thanks for the confirmation! At least everybody else in my group is now warned to not update the java version :-)
I've saved the call stack as Bernd proposed. I hope it helps to find a solution.
Ciao,
Antje
Sorry for not getting this
Sorry for not getting this right in the first report: yes i can confirm the beachball. It hangs, it doesnt disapear.
An additional jstack attached.
btw, i get errors when attaching a file in this forum.
I can confirm that our shop
I can confirm that our shop is also getting this hang when configuring nodes. We are looking at using an alternate JDK because of security holes in the previous OS X JDK.
The same problem occurs in
The same problem occurs in the Column Filter node.
Also the SDK version running under Eclipse Helios has the same problems.
A quick update on the KNIME
A quick update on the KNIME problems with Java 1.6.0_29:
The last couple of days we've been working on investigating the problem and to fix it or to find a workaround. Updating to the latest preview of openjdk 1.7.0 (http://openjdk.java.net/projects/macosx-port/) led to similar problems and didn't help.
The only possible workaround we know so far is to use the previous JRE (1.6.0_26). As there seems to be no way of reverting a Mac OS Software Update and Apple has removed the download of the previous Java version as well, we are currently working on a KNIME startup script that allows to specify which JRE to use and point it to the JRE 1.6.0_26 folder.
I'll keep you posted and offer the script and a manual on how to obtain the JRE 1.6.0_26 here shortly.
At first: If you did not
At first: If you did not install "Java for Mac OS X 10.7 Update 1" , you are fine. If you did install it already, this manual shows you how to start KNIME with Java 1.6.0_26.
ln -s <1.6.0.jdk-DIR>/Contents/Home jre
in the Terminal and launch KNIME by invoking
./knime.sh
Thanks for the script, but I
Thanks for the script, but I have the problem that I don't have anymore the old Java jdk. I'm trying to get the Java 1.6.0_26 for Mac OSX but without success. How it's possible to get the older jdk?
Could you supply me with a
Could you supply me with a script adapted for the Eclipse_Knime_2.5.1 version (64-Bit Mac Cocoa)?
Cheers
Chris
I of course mean the SDK
I of course mean the SDK version
Hi, for the SDK there is no
Hi,
for the SDK there is no startup script necessary. A comment below contains instructions on how to configure the SDK to start KNIME with another SDK.
Let me know if you need any additional help with this.
Dominik
Comments to this fix: First
Comments to this fix:
First off, it works!
second, pay attention to the following: this problem is also applicable on OSX10.6, so not only the "Java for Mac OS X 10.7 Update 1" was affected, also the "Java for Mac OS X 10.6 Update <something>"
you can execute the shellscript from the terminal, but first it needs to be made executable: chmod +x knime.sh
If you want to execute the shellscript directly, make sure it doesnt open in another application by default. With me xcode was the default application for a .sh file.
You can change this by opening the fileinfo window (command-i)
Then select "Open With" -> "Other" -> in Applications go to "Utilities"
Now change the Enable dropdown from "Recommended Applications" to "All Applications" and check "Always Open With" to on. Then select "Termial.app" and press "Add".
Then, to change the icon, do the following:
select the knime executable and open the info window (command-i)
In that window select the icon in the left top corner (it will get a blue edge indicating it is selected) and press command-c
Go to the info window of the shellscript, select the icon and press command-v.
The only problem with this i found sofar is that it opens an extra terminal window. A small price to pay for a working Knime.
Thanks for your
Thanks for your comments.
One additional remark for node developers using the KNIME SDK: For the development environment you can add an additional JRE in the Eclipse settings (Java -> Installed JRE). Choose Standard VM and point to the path of the copied JDK (<1.6.0.jdk-DIR>/Contents/Home). Afterwards you can choose the newly added JRE in the run configuration for KNIME and KNIME will start with java 1.6.0_26.
Has anyone tried using
Has anyone tried using Macports OpenJDK? It dates back to 2010...
Doesn't seem to work,
Doesn't seem to work, however, I am not sure if it is OpenJDK's fault, or your script:
$ ln -s /opt/local/share/java/openjdk6 /Applications/knime/jre$ ls /Applications/knime/jre/bin/java/Applications/knime/jre/bin/java
$ /Applications/knime/knime.sh-bash: /Applications/knime/knime.sh: Permission denied
$ sudo /Applications/knime/knime.sh
Password:
sudo: /Applications/knime/knime.sh: command not found
Version info:
$ /Applications/knime/jre/bin/java -versionopenjdk version "1.6.0"
OpenJDK Runtime Environment (build 1.6.0-b20)
$ java -version
java version "1.6.0_29"
Java(TM) SE Runtime Environment (build 1.6.0_29-b11-402-10M3527)
Thanks,
-Zach Lym
I didn't try the macports
I didn't try the macports openjdk so far, but to me it looks more like a permission problem on the knime.sh script. Could you please try to do a "ls -l /Applications/knime" and post the result?
I tried sudo chown -R -H
I tried
sudo chown -R -H zachlym:staff /Applications/knime/
sudo chmod -R -H 777 /Applications/knime/
And the script runs, but it only produces one line of output...
$ sh /Applications/knime/knime.sh$ /Users/zachlym
ls -l /Applications/knime
rwxrwxrwx@ 1 zachlym staff 0 Oct 21 2009 Icon?
drwxrwxrwx 3 zachlym staff 102 Sep 29 2010 KNIME.app
drwxrwxrwx@ 16 zachlym staff 544 Jan 15 15:16 configuration
lrwxrwxrwx 1 zachlym staff 30 Jan 15 15:06 jre -> /opt/local/share/java/openjdk6
-rwxrwxrwx@ 1 zachlym staff 1063 Dec 28 22:09 knime.command
-rwxrwxrwx@ 1 zachlym staff 1063 Dec 28 22:09 knime.sh
drwxrwxrwx 3 zachlym staff 102 Nov 5 2010 p2
drwxrwxrwx@ 186 zachlym staff 6324 Sep 29 2010 plugins
sudo chown -R -H
sudo chown -R -H zachlym:staff /Applications/knime/
sudo chmod -R -H 777 /Applications/knime/
This fixed it for me. Cheers.
Can you try to
Can you try to invoke
'
/Applications/knime/knime.sh'directly?I don't know which shell 'sh' is invoking on your system.Thanks for the great work in
Thanks for the great work in getting 2.5.2 released.
2.5.2 still appears to exhibit the problem with this JVM version - do you have an ETA for when there might be a KNIME fix for this issue? (I have no older JDK version to revert to on my Macs)
(As further information: ...
(As further information: ... )
1.6.0_31 pending release from Apple does not fix this issue, so this seems like more impetus that it should get fixed in the KNIME code base.
I don't think we will be able
I don't think we will be able to fix it in KNIME since we are doing nothing wrong. It only happens on Mac and only since one of the latest releases. I agree it's an awkward situation and we hope that with openjdk 7 it will go away. But there are other issues with this...
I see no older Java versions
I see no older Java versions other than 1.6.0_29 in my computer, since it's a brand new laptop.
Strangely, I have not been able to find a decent way to install previous Java versions on Mac OS X Lion. Some articles mention a hacky way to install Java 1.5, but I'm not sure if this is the way I want (or need) to go.
Has any of you guys had this problem and would be able to help me out? What are my options here?
Unfortunately, we are not
Unfortunately, we are not aware of an official way for installing previous java versions either. But good news on this topic: We are currently testing a workaround that avoids these problems which looks very promising. (Thanks to quaeler for pointing us in this direction!) Probably we can resolve the issue with the next bugfix release.
In the meantime I'll contact you for a temporary solution.
Good news! We have fixed this
Good news! We have fixed this problem with KNIME 2.5.4 (http://knime.org/about/news/knime-version-254-released).