Hi,
I'm new here, so if I'm posting in the wrong place, or not following protocol, please feel free to point me in the right direction.

I have been working on a tight integration of JPPF as a parallel environment within the Open Grid Scheduler (formerly SGE, Sun Grid Engine). The idea is that there are users (like me) who have a computing environment that is set up under OGS or SGE who would like to be able to launch JPPF jobs that are scheduled and managed by OGS / SGE. The idea is that when a user launches a new job that needs JPPF, OGS will allocate a number of compute nodes for the job. OGS then starts up a JPPF driver and JPPF nodes on these particular compute nodes, and then runs the job itself. When the job is complete, OGS shuts down the JPPF driver and nodes.
I have recently succeeded in getting this set up.
One requirement that surfaced in performing this integration is the need for dynamic port allocation within JPPF.
In an OGS environment, a single multi-core computer may be configured to present itself as multiple nodes to the OGS scheduler. Consequently, it is entirely possible that when multiple JPPF jobs are launched via this OGS integration, the result could be that a single computer may end up running more than one JPPF driver. In this scenario, it is necessary to configure the JPPF driver such that it dynamically sets the value of jppf.server.port to a vacant port number. I have made changes to org.jppf.server.JPPFDriver and org.jppf.server.nio.NioServer to enable this behavior in JPPF.
The attached patches are based off of v_3_1_4. After applying the attached patches, if the user sets jppf.server.port=0, the JPPF driver will dynamically allocate a free port number and print out the newly bound port. This port will be broadcast to available clients.
At your convenience, it would be great if you could review the attached patches. I hope you will be able to include them in the repository. The changes are about 21 lines of code, and about a third of that is comments.
Cheers,
Lane Schwartz