I send Maxscript jobs to deadline on an hourly basis.
Adding users who do the same has introduced some problems however.
My question: is it possible to send custom errors back to Deadline?
A lot of the problems I see cause failures on the task but return no useful information from max.
I have error trapping built into the scripts, but I can’t figure out how to get that back to deadline and to me without having to run each file myself and find the issue.
Unfortunately the bulk of the error messages look like this:
This reflects a number of different errors, all of which are thrown in max but never make it to deadline.
I’ve attached 3 error files which are all failing for the same reason: no geometry selected (there is no geometry in the scene).
But as you can see, all of the error messages are different.
All of these errors are also complete rubbish to my end users. Error1.txt (1.88 KB) Error3.txt (15.2 KB) Error2.txt (15.2 KB)
I think a good solution would be to do the following:
Catch the error in your script
Log it to max’s render log
Return ‘false’ from the script
Deadline checks the return value from the script, and if it’s false, it should throw an error. Since you have already printed the error to max’s render log, in theory it should show up.
If that still doesn’t work, could you post your ALB_NetworkRendering.ms script?
try
(
throw "There are no objects enabled for rendering. Please rectify this issue and try again!"
)
catch
(
format "*** % ***\n" (getCurrentException())
)
This gave me all of the results as posted earlier.
I added this after the catch:
return false
The result was Deadline telling me:
That still wasn’t cutting it.
I realized that the throw and return needed to be paired together. For the sake of this not happening on a workstation node twice I have modified my code more than below, but the gist of it is this:
throw "There are no objects enabled for rendering. Please rectify this issue and try again!"
return false
Which produces this in Monitor:
Thank you for that little tidbit that put me on the right track. I was working just fine on a workstation, but just off from the Deadline requirement. I also didn’t previously know about the return false bit.