Is there a way to specify an automatic retry when there are no licenses available? What I'm looking for is a retry in the licensing code for V-Ray that, if it fails to obtain a license, will pause for a predetermined amount of time then try again. What I'd ideally like is a command-line flag that allows you to specify the number of retries and the wait time between retries,
Why am I asking for this when one could simply launch the job again if there are no licenses available? Between the time that we check if there are free licenses available and the time when the job starts, another render job could start and grab the license. Since we have hundreds of V-Ray licenses, its kind of a whack-a-mole situation. So when we check the available license count we actually pretend we have slightly fewer than actually exist. As a result we're not using our full complement of licenses. The alternative is to let the render job fail, but that tends to happen at night on the farm, and since we won't check the status until morning, we might find a few jobs never started because there were no licenses, which requires the job to be resubmitted and the artist has to wait.
So what we are interested in is something along the line of a command-line flag that allows you to specify the number of retries and the wait time between retries, e.g. "-license_retries 5 60". In this example, if a license were unavailable it would wait 60 second and retry again, and repeat up to 5 times until it either grabs a license or else fails on the 5th time. But maybe there is a callback that can do this? Another alternative is to create a wrapper, but we would need to somehow detect that the job failed due to licensing and not some other reason
Is there any mechanism to do anything like this already from the V-Ray command line?
Thanks,
- vanpixelguy
Why am I asking for this when one could simply launch the job again if there are no licenses available? Between the time that we check if there are free licenses available and the time when the job starts, another render job could start and grab the license. Since we have hundreds of V-Ray licenses, its kind of a whack-a-mole situation. So when we check the available license count we actually pretend we have slightly fewer than actually exist. As a result we're not using our full complement of licenses. The alternative is to let the render job fail, but that tends to happen at night on the farm, and since we won't check the status until morning, we might find a few jobs never started because there were no licenses, which requires the job to be resubmitted and the artist has to wait.
So what we are interested in is something along the line of a command-line flag that allows you to specify the number of retries and the wait time between retries, e.g. "-license_retries 5 60". In this example, if a license were unavailable it would wait 60 second and retry again, and repeat up to 5 times until it either grabs a license or else fails on the 5th time. But maybe there is a callback that can do this? Another alternative is to create a wrapper, but we would need to somehow detect that the job failed due to licensing and not some other reason
Is there any mechanism to do anything like this already from the V-Ray command line?
Thanks,
- vanpixelguy
Comment