Right now, the system for setting the per-task minimum and maximum (timeout) intervals is a little confusing, with separate values for minutes and seconds, and no indication of whether one will be ignored if the other is present. It would be nice if these were consolidated into single JobInfo keys which were parsed semi-intelligently, and which were allowed to be sparse:
20 -> 20 seconds
1:30 -> 1 minute 30 seconds (equivalent to `90`)
1:00:00 -> an hour (equivalent to `60:00`)
1:06:00:00 -> one day, six hours (equivalent to `30:00:00`)
I realize I didn’t explicitly ask this in the original post, but are the values for MinRenderTimeSeconds and MinRenderTimeMinutes additive, or does the presence of one cancel the other out? (The same question applies to TaskTimeoutSeconds and TaskTimeoutMinutes, but I’m guessing the answer will be the same).
If MinRenderTimeSeconds and MinRenderTimeMinutes are both specified, MinRenderTimeSeconds will be ignored. The same is for TaskTimeoutSeconds and TaskTimeoutMinutes. We’ll update our documentation to mention this to help avoid confusion.
For now though, I don’t think we’ll be changing how these values are specified in the job info files, since the current system works.
OK, so after playing with this some more, I’ve noticed that the the Min/MaxRenderTime values are treated pretty inconsistently:
The values are either specified in minutes or seconds at submission time, and the minutes value stamps out the seconds value.
The values are all stored in the database as seconds.
The values are displayed in the Monitor in minutes.
This means that I may have a MinRenderTime value of something like 8 seconds that appears as 0 in the job properties, but can still cause my tasks to error and be re-queued. What’s even more annoying is that, in order to actually set it to 0, I have to open the job properties, set the min time to something other than 0, click OK, re-open the job properties, set it to 0 again, and click OK again.
Can the job properties controls at least be modified to function as proper timestamps (HH:MM:SS)?
I agree that we should have more fine grained timeouts in the Monitor, and using a timestamp control would be ideal. I’m actually surprised no one has brought this up before. We’ll add it to the todo list for version 7.