AWS Thinkbox Discussion Forums

Deadline 10 Arnold for 3DS Max (MaxToA) failing on slaves

When submitting an Arnold (MaxToA) with 3ds Max 2018 (update 1) the slave reports errors and never actual renders.

The Error Title is:
“Error: RenderTask: Unexpected exception (Exception caught in 3ds max: – Syntax error: at keyword parameter, expected”

I have attached the error file, but the only thing that stands out to me these lines. Stating nrres_ENG.dat cannot be found.

2017-09-15 14:46:18: 0: STDOUT: ERR: Unable to open C:\Users\RenderSA\AppData\Local\Thinkbox\Deadline10\slave\por-render8\jobsData\59bc1fd5667f30a97ccbff79\0_tempTJqTI0\lan\ENG\nrres_ENG.dat: The system cannot find the path specified. (0x3).
2017-09-15 14:46:18: 0: STDOUT: DBG: Looking for Adapters in C:\Users\RenderSA\AppData\Local\Thinkbox\Deadline10\slave\por-render8\jobsData\59bc1fd5667f30a97ccbff79\0_tempTJqTI0\Adapters*.
2017-09-15 14:46:18: 0: STDOUT: ERR: Unable to open C:\Users\RenderSA\AppData\Local\Thinkbox\Deadline10\slave\por-render8\jobsData\59bc1fd5667f30a97ccbff79\0_tempTJqTI0\lan\ENG\nrres_ENG.dat: The system cannot find the path specified. (0x3).
2017-09-15 14:46:18: 0: STDOUT: DBG: Looking for Adapters in C:\Users\RenderSA\AppData\Local\Thinkbox\Deadline10\slave\por-render8\jobsData\59bc1fd5667f30a97ccbff79\0_tempTJqTI0\Adapters*.
Job_2017-09-15_14-46-27_59bc200333fd1916345c7519.txt (42 KB)

Hmm. I think that’s a BackBurner file. Did you install it along with Max? It’s unfortunately required to use 3dsmaxcmd.exe. It also looks like Max is looking for it in the temporary location we copy submitted scene files to, so if BB is installed, there may be more at place here.

Hi!

In Deadline 10, we rewrote how the parameters saved in the JOB file by the submitter are loaded by the 3ds Max plugin. It appears that there is a case we did not catch - if a property does not exist in the actual version of the renderer, it can lead to a MAXScript error in customize.ms. Which is exactly what you experienced. Thank you for reporting it!

The good news is that it should be really easy to fix it yourself, and we will fix it for the next weekly update of Deadline 10.

*Go to your Deadline Repository share, and navigate to the (Repository)\plugins\3dsmax\ folder.
*Open the file “customize.ms” for editing either in the MAXScript Editor, or in any text editor.
*Locate the function definition "fn setCurrentRendererSetting options_array = "
*Modify the following line

if convertedVal != (getProperty renderers.current (param as name)) do

to

if try(convertedVal != (getProperty renderers.current (param as name)))catch(false) do

*Save the modified file.
*Requeue the job.

The reason for the changes in customize.ms was that we want to only update properties that have been changed since the submission. However, the above test assumed that every property name listed in the hard-coded array of known Arnold properties actually exists in the renderer. When I tested here, I got an error at the property “auto_shutter” which apparently was valid when the script was written, but does not exist in my particular installation.

With the modification above, any failure to get a property from the current renderer to test for changes will skip the rest of the assignment and thus ignore properties that don’t exist in the particular build…

Once again, thank you for reporting the bug and for your patience!

Hi Bobo,

Thanks for the reply. I edited the “customize.ms” file as you noted and re-queued, but still having the same error / failure as far as I can tell. Here’s the latest log file.

Thanks!
Job_2017-09-18_15-43-25_59c021dd33fd193b94fdf429.txt (42 KB)

Interesting, that was definitely a bug that needed fixing. Diving deeper to see what else is going on…

Ok, there was a second pain point that not even the new error trap could catch.
The property “AOV_Manager” shouldn’t have been included in the list. It points at a ReferenceTarget object, and is not simply a value or boolean that could be rebuilt in customize.ms. The actual object exposes a .Drivers property which holds an array of the AOV maxObjects, and I will discuss internally whether we need to do anything with that.

But for now, you can open the exact same customize.ms file and remark the line listing AOV_Manager, like this:

--ARNOLD SPECIFIC SETTINGS:
	if getRendererIdString() == "arnold" do
	(
		DeadlineUtil.LogMessage ">Solid Angle Arnold detected as current renderer."
				
		--Each element of the array is a sub-array containing
		--1. the INI FIle Property as string, 
		--2. whether to convert the value to maxscript value or keep as string, 
		--3. the description string used to output to the log file.
		
		local options_array = #(
			--MAIN CONTROLS > OPTIONS:
			#("AA_sample_clamp",true,"AA Sample Clamp"),
			#("AA_sample_clamp_affects_aovs", true, "AA Sample Clamp Affects AOVs"),
			#("AA_sample_clamp_enabled", true, "AA Sample Clamp Enabled"),
			#("AA_samples", true, "AA Samples"),
			--#("AOV_Manager",true,"AOV Manager"),
			#("Atmosphere",true,"Atmosphere"),
			#("GI_diffuse_depth",true,"GI Diffuse Depth"),
			#("GI_diffuse_samples",true,"GI Diffuse Samples"),
			...

Once again, thank you for your patience!

Hey Bobo,

No luck. Seems to break some other stuff when I comment out the AOV Manager line. Error report attached.
Job_2017-09-21_10-32-01_59c3cd6133fd19227cc29a33.txt (53.1 KB)

No, no, that is actually good. Now it is failing with an actual error message, so we can see how far it got. Remarking the AOV Manager allowed it to continue past that point, and will reveal other issues we might be having.

According to the error message in the log, it got as far as the second to last property in the Arnold properties list:

#("user_options",true,"User Options"),

It explains why my tests did not fail at this point - I have .enable_user_options disabled, so I did not have any user_options to set.

I believe that the problem here is that the second element of the array is set to true, which forces an evaluation of the expression stored as value. So MAXScript calls

execute "thread_priority lowest" 

and chokes on it, because it attempts to find a global function called “thread_priority” and pass an argument “lowest” to it, and of course fails.
I am not sure if flipping the value to false

#("user_options",false,"User Options"),

will do any good, but you could try. It would preserve the user option as a string.

If it fails, you could simply remark that line, too, and try again.

Of course, if you don’t intend to tweak the Arnold settings post-submission, you can simply disable the export of Arnold settings for now under the Options tab of SMTD.

Hey Bobo,

Cool, that worked!! Though it’s unchecking the Render Settings Export for Arnold that seems to fix it.

Good enough for now. Thanks!!

Are you saying that changing the line to

#("user_options",false,"User Options"),

or remarking it to

--#("user_options",true,"User Options"),

did not solve the problem?

We would like to fix it once and for all, and I would expect that setting the second element of the array to false should fix it…

Hey, sorry for piggybacking on this thread, but we have been seeing the same errors on the Deadline farm about nrres_ENG.dat. This seems like a language file…?

  • Again, the .dat file is expected to be on C:\...\jobsData\...
  • We are not using Arnold.
  • I see that already the convertedVal fix is in mainline, so “tried that”.

Why is this file expected to be in the job data? Is this a max thing? Could we point it to a fixed location on the machine?

Boop? https://forums.autodesk.com/t5/installation-licensing/backburner-missing-message-1047/td-p/2847064

If I recall correctly, I was right that it is a part of BackBurner. Newer versions of Deadline don’t require it anymore, but try re-installing Max with the option to include it enabled. Especially if you are on Deadline 9.

I found that in my recent issue, my logs produce partly the same error:

2021-10-26 15:25:04: 0: STDOUT: ERR: Unable to open C:\ProgramData\Thinkbox\Deadline10\workers\n02-BOMBER\jobsData\6177ffd2bf0fe950c4d7afd1\0_tempn1LJN0\lan\ENG\nrres_ENG.dat: The system cannot find the path specified. (0x3).
2021-10-26 15:25:04: 0: STDOUT: DBG: Looking for Adapters in C:\ProgramData\Thinkbox\Deadline10\workers\n02-BOMBER\jobsData\6177ffd2bf0fe950c4d7afd1\0_tempn1LJN0\Adapters*.
2021-10-26 15:25:04: 0: STDOUT: ERR: Unable to open C:\ProgramData\Thinkbox\Deadline10\workers\n02-BOMBER\jobsData\6177ffd2bf0fe950c4d7afd1\0_tempn1LJN0\lan\ENG\nrres_ENG.dat: The system cannot find the path specified. (0x3).
2021-10-26 15:25:04: 0: STDOUT: DBG: Looking for Adapters in C:\ProgramData\Thinkbox\Deadline10\workers\n02-BOMBER\jobsData\6177ffd2bf0fe950c4d7afd1\0_tempn1LJN0\Adapters*.
2021-10-26 15:25:04: 0: STDOUT: Failed to find SSO server app AdSSO.exe in the following paths:
2021-10-26 15:25:04: 0: STDOUT: C:/Program Files/Autodesk/3ds Max 2022
2021-10-26 15:25:04: 0: STDOUT: Failed to find SSO server app AdSSO.exe in the following paths:
2021-10-26 15:25:04: 0: STDOUT: C:/Program Files/Autodesk/3ds Max 2022
2021-10-26 15:25:04: 0: STDOUT: Failed to find SSO server app AdSSO.exe in the following paths:
2021-10-26 15:25:04: 0: STDOUT: C:/Program Files/Autodesk/3ds Max 2022

Ain’t I’m correct that this Backburner issue shouldnt be there as Deadlines latest version does not need backburner anymore ?

Anyways… I don’t understand why smaller scenes will render but bigger fail with the above error?

You might be better off creating a new thread for your issues and linking other threads you think are connected. This thread is different to your issue.

It looks like the AdSSO.exe is missing from the install, not sure if this is ‘Single Sign On’ and part of the licensing but it looks like it’s missing. maybe re-install or copy these bits from another machine onto the one that’s not working.

and yeah, backburner is dead so not required, it was separated from the main app much like mental ray then ditched in the adsk graveyard.

Looks like there are other issues here too
…STDOUT: ERR: Unable to open…The system cannot find the path specified. (0x3)…

Privacy | Site terms | Cookie preferences