Nuke and Deadline error: renderCompositingMain.missing arguments after addUserKnob

Hi,

I am trying to render a Nuke job using AYON. Here are the steps I did:

  1. Manually publish a .mp4 plate using the publisher
  2. Opening Nuke from AYON
  3. Loading the plate through the Loader
  4. Going into the Create tool, creating a Render (write) product instance and selecting farm rendering
  5. Hitting Publish

My node graph looks like this:

image

On the farm I get the following errors:

Error: ManagedProcessAbort : Monitored managed process "Nuke" has exited or been terminated.
...
INFO: Full Command: "C:\Program Files\Nuke14.0v3\Nuke14.0.exe" -V 2 --gpu 0 -t "C:\ProgramData\Thinkbox\Deadline10\workers\mmol-ws02\jobsData\672b92e1dd5573ca69b00e62\thread0_temprfjhA0\testpipe_sh01_workfileCompositing_v009.nk"
...
STDOUT: renderCompositingMain.missing arguments after addUserKnob

Looks like it’s creating a temporary Nuke scene (thread0_temprfjhA0\testpipe_sh01_workfileCompositing_v009.nk )

When I try to open it, I get this:

image
image

For now I can’t render on the farm with AYON and Nuke, do someone know what is going on here?

Thanks!

This has come up before apparently on discord here but seems it got left unanswered at the time. Maybe @jakub.jezek knows more about this case?

1 Like

Hi, just bumping the thread, anyone here having the same issue?

Hi,

I investigated this issue, if I open the .nk file (the generated one) in a text editor, I see this for the renderCompositingMain Group node:

Group {
 name renderCompositingMain
 tile_color 0xba2323ff
 xpos -7
 ypos -5
 addUserKnob {20 User}
 addUserKnob {26 "" l Rendering}
 addUserKnob {41 Render l "Render Local" T inside_renderCompositingMain.Render}
 addUserKnob {22 createReadNode l "Read From Rendered" -STARTLINE T "import write_to_read;        write_to_read.write_to_read(nuke.thisNode(), allow_relative=False)"}
 addUserKnob {22 clearRendered l "Clear Rendered" -STARTLINE T "import clear_rendered;        clear_rendered.clear_rendered(/"//srv-mmol-fs1/projets/AYON/TEST_PIPE/SHTEST/work/compositing/renders/nuke/renderCompositingMain/")"}
 addUserKnob {1 publish_instance +INVISIBLE}
 publish_instance "JSON:::\{\"id\": \"pyblish.avalon.instance\", \"productType\": \"render\", \"productName\": \"renderCompositingMain\", \"active\": true, \"creator_identifier\": \"create_write_render\", \"variant\": \"Main\", \"folderPath\": \"/SHTEST\", \"task\": \"compositing\", \"instance_id\": \"6e7b7e2a-c5b6-4d0e-aa7d-da1a3b6c6aea\", \"creator_attributes\": \{\"render_target\": \"farm\", \"review\": true\}, \"publish_attributes\": \{\"CollectFramesFixDef\": \{\"frames_to_fix\": \"\", \"rewrite_version\": false\}, \"ValidateExposedKnobs\": \{\"active\": true\}, \"ValidateOutputResolution\": \{\"active\": true\}, \"ValidateNukeWriteNode\": \{\"active\": true\}, \"ValidateDeadlineJobInfo\": \{\"active\": true\}, \"ValidateDeadlinePools\": \{\"active\": true\}, \"ValidateCorrectAssetContext\": \{\"active\": true\}, \"NukeSubmitDeadline\": \{\"use_gpu\": true\}\}\}"
}

I tried isolating the addUserKnob lines by commenting them and this is the line that causes this issue:

addUserKnob {22 clearRendered l "Clear Rendered" -STARTLINE T "import clear_rendered;        clear_rendered.clear_rendered(/"//srv-mmol-fs1/projets/AYON/TEST_PIPE/SHTEST/work/compositing/renders/nuke/renderCompositingMain/")"}

The issue boils down to the slashes to escape the quotes that are in the wrong direction, this works:

addUserKnob {22 clearRendered l "Clear Rendered" -STARTLINE T "import clear_rendered;        clear_rendered.clear_rendered(\"<the_path>\")"}

I solved it by changing to single quotes here:

value = "import clear_rendered;\
        clear_rendered.clear_rendered('{}')".format(path)

Should I make a PR?

1 Like

Hi @johhnry apology for the late replay. Thank you for the bug discovery. I was looking into our PRs and haven’t found it. I am assuming this was not yet committed, right?

Hi @jakub.jezek no problem, I didn’t create the PR yet, I can do it now

PR merged HERE: Fix error missing arguments after addUserKnob by johhnry · Pull Request #54 · ynput/ayon-nuke · GitHub

1 Like