Problem

If you experience that local analyses in Unix/Linux platforms are very slow, or a long stop before Kiuwan Local Analyzer tries to upload your analysis results to Kiuwan, it is possible that your environment is affected by a well-known bug in some Java Virtual Machines running under UNIX platforms.

The library used for random number generation in Sun's JVM relies on /dev/random by default for UNIX platforms. This can potentially block the JVM on some operating systems /dev/random waits for a certain amount of "noise" to be generated on the host machine before returning a result.

Although Oracle states that this problem has been fixed from Java 6 version, we have been reported that this problem also appears in newer JVM versions like Java 8.

Solution

Follow these steps to fix this problem:

  1. Exit Kiuwan Local Analyzer.
  2. Open the $JAVA_HOME/jre/lib/security/java.security file in a text editor.
  3. Look for the line where securerandom.source property is set.
  4. Change its value from file:/dev/random to file:/dev/urandom
  5. Save your change and exit the text editor.
  6. Run Kiuwan Local Analyzer again.

On some machines, this workaround may not work. If this is your case, try changing the value of the securerandom.source property to:

file:/dev/./urandom