json dynamic nested query

   7491   27   2
User Avatar
Member
31 posts
Joined: Feb. 2017
Offline
Thanks for the example. This is fetching only one vertex list. And I am not sure how you would combine all these into a curve GEO, without and intermediate CSV file. Already there is two JSON nodes for fetching a single vector2 list. Also, the sample uses a hardcoded array index to locate the Cavern node. The real example need to find all caverns (or any other entity to be generated), fetch the vertex list for each cavern, match each cavern etc. to each corresponding UserFolder, and match each user folder to the corresponding Scene. If you try to do this, you'll probably notice several issues with the existing nodes lacking a bit in flexibility, requiring complex workarounds for even simple tasks.
Edited by gyltefors - April 2, 2019 00:48:48
User Avatar
Member
603 posts
Joined: Sept. 2016
Offline
gyltefors
(I also noticed that re-cooking a geo node doesn't really re-cook it unless I manually delete the output files, which may be a bug, as the whole idea of TOPs is to keep track of dependencies for me…)

Take a look at the “Cache Mode” parm on the ROP Geometry node. By default it will pick up the previous disk output.
http://www.sidefx.com/docs/houdini/nodes/top/ropfetch.html#parameters [www.sidefx.com]
User Avatar
Member
7 posts
Joined: Feb. 2019
Offline
I should also report that using an attribute copy between two json_input nodes is resulting in a consistent crash for me. as well as the json_array index being accumulated when multiple json inputs are chained together. I'm not sure if this was intended, but i expected the counter to reset per node.
Edited by NDkg - April 2, 2019 15:31:24

Attachments:
counter.png (39.8 KB)

User Avatar
Staff
387 posts
Joined: Aug. 2017
Offline
NDkg
I should also report that using an attribute copy between two json_input nodes is resulting in a consistent crash for me. as well as the json_array index being accumulated when multiple json inputs are chained together. I'm not sure if this was intended, but i expected the counter to reset per node.

Do you have a crash log? One thing to try is disabling the Task Graph and seeing if the crash still occurs.

Can you clarify what you mean by json_arrayindex accumulating? Are both the first and second Json Input node in the chain performing an Array Retrieve operation?

Thank you!
Edited by BrookeA - April 2, 2019 18:17:21
User Avatar
Staff
387 posts
Joined: Aug. 2017
Offline
gyltefors
Thanks for the example. This is fetching only one vertex list. And I am not sure how you would combine all these into a curve GEO, without and intermediate CSV file. Already there is two JSON nodes for fetching a single vector2 list. Also, the sample uses a hardcoded array index to locate the Cavern node. The real example need to find all caverns (or any other entity to be generated), fetch the vertex list for each cavern, match each cavern etc. to each corresponding UserFolder, and match each user folder to the corresponding Scene. If you try to do this, you'll probably notice several issues with the existing nodes lacking a bit in flexibility, requiring complex workarounds for even simple tasks.

Hi there – I was wondering if you could post a more complete sample of the JSON data? This would help us to be able to investigate more deeply and to construct a more complete example .hip file.

I'm also wondering if there is specific functionality/features that is missing and that you could see being implemented in the node that would help with your use case?

Thank you for all of your feedback and work thus far!
User Avatar
Member
7 posts
Joined: Feb. 2019
Offline
BrandonA
Can you clarify what you mean by json_arrayindex accumulating? Are both the first and second Json Input node in the chain performing an Array Retrieve operation?

my first node was a json_input with the second being a python processor that was doing some adjustment to my “path” value. the first work item in the python processor had the json_arrayindex value of 1328, not 0 as I was expecting.


as for the attribute copy crash. I left a few sessions open in attempts to get a proper crash log. they all ended up waking up. so it may not be a crash after all. but is evaluating incredibly slow.
User Avatar
Member
31 posts
Joined: Feb. 2017
Offline
Yes, this is really, really slow. I have some entities in my JSON file that will be moved into a point cloud. It is cooking every single point separately, and it takes forever. And when I restart Houdini, it doesn't realize that the cooked data is available on disk, so I have to recook the whole graph every time I restart.
Edited by gyltefors - April 13, 2019 07:11:07
User Avatar
Staff
387 posts
Joined: Aug. 2017
Offline
gyltefors
Yes, this is really, really slow. I have some entities in my JSON file that will be moved into a point cloud. It is cooking every single point separately, and it takes forever. And when I restart Houdini, it doesn't realize that the cooked data is available on disk, so I have to recook the whole graph every time I restart.

Hi there, do you have a HIP file that I can take a look at that demonstrates the problem?
  • Quick Links