AWS Thinkbox Discussion Forums

SubmitNukeToDeadline and Nuke13

Hello,

I thought I’d post on here in case anyone else runs into this situation. Details: Nuke 13.1v2 and DL 10.1.19.4, both on windows.

TL;DR: In SubmitNukeToDeadline , “filter()” returns an iterator, not a list

Issue: Deadline returned no error on submission, but nothing was submitted.

One of our users was testing Nuke13 (13.1v2) submission to Deadline and when selecting “Submit Write Nodes As Separate Jobs” AND “Select Nodes Only”, the the job did not actually get submitted. The script editor logged: “Main Deadline thread exiting”
and “Results thread exiting”

Cause: filter() was returning something like this: <filter object at 0x000001C01ECE5AC8>

Workaround:
Read through a lot and tested to see where it was failing and it turned out to be a python2 v. python3 issue on “filter()” , so I had to use “list()” in order to get the list of write nodes returned. The specific line was around 2430 for “writeNodes” in the dialog.selectedOnly.value()

orig:
writeNodes = filter(IsNodeOrParentNodeSelected, writeNodes)

workaround:
writeNodes = list(filter(IsNodeOrParentNodeSelected, writeNodes))

There was another filter and map function used elsewhere in the same script, so I changed those as well.

Hope this saves someone some time! Not sure if this was fixed in 10.1.21, but we’re still on 10.1.19…

2 Likes

Hi Jarak,
Thanks for posting this issue and workaround.
We recently upgraded to 10.2.0.10 and experienced the same behaviour with the out of the box SubmitNukeToDeadline.
Your fix worked. Hopefully it’s merged into the next release.
Much appreciated.
-Jake

I can’t say where the fix is in the roadmap, but I can say that I’ve re-created the bug and the fix with your advice and explanation.

Thanks so much!

Privacy | Site terms | Cookie preferences