$PDG_DIR on hqueue clients == $JOB? But won't load $JOB/hda/*

   2003   3   2
User Avatar
Member
50 posts
Joined: Jan. 2018
Offline
I made a test asset to run a hda processor through a Hqueue render farm and it uses an attribute create to stamp the $HSITE $HOUDINI_PATH, and $JOB vars that the client uses. Inspecting the work item result file, I can see what variables the client is using. The HSITE as expected points to the H: mounted shared folder, but $HOUDINI_PATH is empty, while $JOB appears to be equal to $PDG_DIR.

In 17.5.173 (windows10), the file dependency on the HDA processor works well to include the local file of the topmost hda that the hda_processor uses. However this file include system fails for hda's nested inside the topmost hda…Even though they get copied to pdgtemp/(some_number), the hda processor will still return errors because it seems it can't find the child hdas. (Is this a known bug?)

So I have attempted to copy the child hdas to the $PDG_DIR/hda folder, which seems to be equivalent to $JOB/hda. But still the workitems fail. I have also tried $PDG_DIR/otls with no success.

I can get the workitems to run successfully only if I copy the child hdas to the HSITE folder, but we want to avoid users copying different versions of the hdas to the same directory, to keep from interfering with other users jobs. Getting $PDG_DIR/hda to work would be ideal.
Wes
User Avatar
Member
536 posts
Joined: July 2009
Offline
How are you defining $HSITE and $HOUDINI_PATH before hand? They have to be declared in the shell prior to Houdini being executed. Theoretically you should also define $JOB at that time too.
User Avatar
Member
50 posts
Joined: Jan. 2018
Offline
Hi Ben! I'll keep that info in mind, but to clarify I wasn't trying to redefine their location. My tests were just reading the variables (based on default/installs) and setting to point attributes to see where the current session thought these paths were located.

The issue mentioned here:

“In 17.5.173 (windows10), the file dependency on the HDA processor works well to include the local file of the topmost hda that the hda_processor uses. However this file include system fails for hda's nested inside the topmost hda…Even though they get copied to pdgtemp/(some_number), the hda processor will still return errors because it seems it can't find the child hdas.)”

..so far has apparently resolved itself, so no need to utilize $JOB or $HSITE anymore.

We've found some hardware connection issues with our servers that could have been suspect. After moving the farm's Houdini share dir off the Hqueue Server and onto a dedicated file share server on the network, now the Hqueue clients are finding all HDA processor's dependencies without additional pathing. It's possible this was affecting $JOB path access too.
Wes
User Avatar
Member
536 posts
Joined: July 2009
Offline
Sounds like you just had some bad server shit going down. It happens to everyone. I would recommend a baseball bat next time Wes, quicker and more effective than IT sometimes.
  • Quick Links