If you run a sequence of development tasks from a script (for example, to compile a suite of programs), it is possible that insufficient licenses will be available at the instant that the script attempts to launch one of the development tasks.
This could occur if:
In either case, while some of the development tasks in a script will be successful, others will fail as no license will be available.
A script can monitor the success or otherwise of each task by testing the return value of the task via the shell $? return status. Zero indicates success, non-zero failure.
If you and others are running such scripts, and meeting this problem, you all need to set the environment variable LMFWAIT for the task. LMFWAIT is used to set a value that specifies the number of times a task should attempt to get a license unit. By default, the task sleeps for 10 seconds between each attempt. In effect, the task suspends itself until a license unit becomes free.
The format of LMFWAIT is:
LMFWAIT=retries[,wait]
where the parameters are:
retries | The number of times the task should attempt to obtain a license |
wait | The time that should be waited, in seconds, between each attempt to obtain a license. The default is 10. |
For example, to allow 100 attempts to use a license, LMFWAIT should be set as follows:
LMFWAIT=100 export LMFWAIT
To allow 25 attempts to use a license, with a 1 minute wait between each attempt:
LMFWAIT=25,60 export LMFWAIT