This is an outdated version of the HTCondor Manual. You can find current documentation at
next up previous contents index
Next: 3.14 Virtual Machines Up: 3. Administrators' Manual Previous: 3.12 Setting Up for   Contents   Index

3.13 Java Support Installation

Compiled Java programs may be executed (under HTCondor) on any execution site with a Java Virtual Machine (JVM). To do this, HTCondor must be informed of some details of the JVM installation.

Begin by installing a Java distribution according to the vendor's instructions. We have successfully used the Sun Java Developer's Kit, but any distribution should suffice. Your machine may have been delivered with a JVM already installed - installed code is frequently found in /usr/bin/java.

HTCondor's configuration includes the location of the installed JVM. Edit the configuration file. Modify the JAVA entry to point to the JVM binary, typically /usr/bin/java. Restart the condor_startd daemon on that host. For example,

% condor_restart -startd bluejay

The condor_startd daemon takes a few moments to exercise the Java capabilities of the condor_starter, query its properties, and then advertise the machine to the pool as Java-capable. If the set up succeeded, then condor_status will tell you the host is now Java-capable by printing the Java vendor and the version number:

% condor_status -java bluejay

After a suitable amount of time, if this command does not give any output, then the condor_starter is having difficulty executing the JVM. The exact cause of the problem depends on the details of the JVM, the local installation, and a variety of other factors. We can offer only limited advice on these matters, but here is an approach to solving the problem.

To reproduce the test that the condor_starter is attempting, try running the Java condor_starter directly. To find where the condor_starter is installed, run this command:

% condor_config_val STARTER

This command prints out the path to the condor_starter, perhaps something like this:


Use this path to execute the condor_starter directly with the -classad argument. This tells the starter to run its tests and display its properties.

/usr/condor/sbin/condor_starter -classad

This command will display a short list of cryptic properties, such as:

IsDaemonCore = True
HasFileTransfer = True
HasMPI = True
CondorVersion = "$CondorVersion: 7.1.0 Mar 26 2008 BuildID: 80210 $"

If the Java configuration is correct, there will also be a short list of Java properties, such as:

JavaVendor = "Sun Microsystems Inc."
JavaVersion = "1.2.2"
JavaMFlops = 9.279696
HasJava = True

If the Java installation is incorrect, then any error messages from the shell or Java will be printed on the error stream instead.

The Sun JVM sets a value of 64 Mbytes for the Java Maxheap Argument, which HTCondor uses. This value is often too small for the application. The administrator can change this value through configuration by setting a different value for JAVA_EXTRA_ARGUMENTS .

Note that if a specific job sets the value in the submit description file, using the submit command java_vm_args, this job's value takes precedence over a configured value.

next up previous contents index
Next: 3.14 Virtual Machines Up: 3. Administrators' Manual Previous: 3.12 Setting Up for   Contents   Index