Notifications
Clear all

[Closed] Deadline ExtraInfo Key/Value Pairs Via MXS

Hey,

Just looking via the SMTDsetttings struct in maxscript and I can’t see a way to specify extrainfo key/value pairs. There are the standard extraInfo 0-9 which is fine for my purposes so far but i’d ideally like to extend this in the future to custom submission data sets.

Have I missed something, or is the way to go to write your own jobinfo file via XML rather than using the built in (and super helpful) struct provided?

i’m using deadline 5.2 BTW

thanks

9 Replies

honestly i understood nothing of what you ask. i’ve thought that i know all about the max but your question sounds like abracadabra for me. could you enlighten me a little on this subject?

According to the release notes,
http://www.thinkboxsoftware.com/deadline-release-history/2011/5/16/new-features-in-deadline-5044528-released-may-16-2011.html

Jobs can now have an arbitrary number of additional key/value properties that can be set in the job info file on submission. The format for these properties is ExtraInfoKeyValue[#]=[Key]=[Value], where [#] starts at 0 and is incremented for each additional property. These additional properties can be seen in the Details tab next to the Task tab in the Monitor. This will allow studios to inject extra metadata into their jobs if they are using custom submission scripts.

In the current 6.x version of SubmitMaxToDeadline_Functions.ms, there is some code that uses this approach to pass the Draft data to Deadline. Not sure if that code is in 5.2. (And I did not write it, so looking at it, it could be polished a bit).

But in general, the idea is that you write something like

format "ExtraInfoKeyValue0=Test0=10
" to:submitInfoFile				
format "ExtraInfoKeyValue1=Test1=Something
" to:submitInfoFile

which defines additional keys with the given name and value outside of the standard 10.
The number has to be incremented, starting at 0 and going up as high as you want.

These keys will NOT be shown in columns of the main Job display of the Monitor though, only the ExtraInfo0 to 9 have their columns. But they will show up in the Job Info tab. The ExtraInfoKeyValue# values will be stored in the database and can be queried by scripts running on the farm, but the user cannot see them.

The SMTDFunctions struct does not provide any functions for writing that data, but you could simply append to the submitInfoFile once SMTDFunctions has finished writing it.

This question really belongs in the Thinkbox Support Forum > Deadline…

aha… i see now. it’s about rendering. right? that’s why i know about it nothing. the last time when i render anything in max was … probably 8 years ago.

2 Replies
(@bobo)
Joined: 11 months ago

Posts: 0

Even worse, it is about NETWORK rendering using a 3rd party render manager called Deadline sold by the company I work for (and which, together with Krakatoa, is responsible for putting the bread on my table). So it is a kind of an obscure topic…

(@denist)
Joined: 11 months ago

Posts: 0

It’s an obscure topic relating to an even more obscure programming language. I love it

Thanks Bobo, its great that it is as easy as that. I’d read all the the data about the visibility of the extra value keys – its their ninja status that i’m looking for. I posted on CGTalk just after I registered on the thinkbox site, I assumed there was enough people on here who rely on Deadline as much as we do.

I can’t even wake up in the morning without Deadline.

Bobo, thanks for posting this. I was working on something simiar with our max to deadline submitter recently, and this is just what I was looking for.

I am adding support for custom Info Key/Value pairs to the SMTDFunctions. I hope it will be part of v6.1.

It won’t be exposed in the SMTD UI, but it will allow users of the struct to set custom values before calling the submit function, and it will take into account any other internal key pairs to avoid collisions.

The format will simply be an array of arrays, each sub-array containing a name string and a value:

SMTDSettings.ExtraInfoKeyValues = #(#("SomeKey","SomeValue"), #("AnotherKey",42) )

Hi Bobo,

That’s great, thank you. In some ways, I’m glad they weren’t there at first as it has let me delve a little deeper into how jobs are actually submitted with Deadline. Great Stuff.