org-glast-jobcontrol Project


The bsub project is a simple system to allow jobs to be submitted to batch from Java. The current system is very simple minded, it allows a job to be created anywhere, and submitted via RMI to a server which submits the jobs to LSF. The interface returns the ID of the submitted job. It is possible to query the status of a submitted job, but not to cancel it.

The org-glast-jobcontrol home page contains links to the

There are some examples of use in the talk presented at this meeting.


Getting the code

The package currently lives in the Glast-Java CVS.

You can access it from:


in module org-glast-jobcontrol. This can also be viewed using ViewCVS.

The project is set up to be build using maven. The source code contains only two packages:




The implementation of the job submission client, and the server


A view examples of how to use the client

Server setup

The server is permanently running on glast-jobcontrol01 under user glast. It is installed in ~glast/bsub. It is started by a cron job which runs ~glast/bsub/monitor every 5 minutes, which in turn runs ~glast/bsub/bsub. Note this script starts both the rmiregistry and the JobControlService. The log file is currently written into the /u1/tmp/bsub directory.

Care and maintainance

The server has been running for many months with no problems, so no problems are anticipated.


lsf maintains a log of all submitted jobs in /var/spool/lsf. This is useful for checking exactly what command was executed by the server.

Installing a new version

If it is necessary to install a new version the procedure is as follows.

Change the version # in the project.xml file. Build a new bsub-<version>.jar file using maven.

  • Log in to glast-jobcontrol01 as user glast
  • Install the new bsub-<version>.jar (built using maven) in ~glast/bsub
  • Modify ~glast/bsub/bsub to use this new version of the jar file
  • Kill the current processes using pkill -f JobControl and pkill rmiregistry
  • Start the new server using bsub/monitor

It is currently also necessary to publish the new jar file to the glast maven repository. Maven should be setup to do this automatically, but currently I just copy the file by hand to:


  • No labels