pyiron / pyiron_workflow

Graph-and-node based workflows
BSD 3-Clause "New" or "Revised" License
10 stars 1 forks source link

:bug: `while` meta-node has bad recursion properties #247

Closed liamhuber closed 2 months ago

liamhuber commented 3 months ago

Because of the way the callbacks are set up in the while meta-node, things keep getting added to the recursion stack without a release and you hit python's standard recursion limit after shockingly few iterations of the body node. The dumb solution is to increase the recursion limit, as done for the integration test in this commit, but the real solution is to come up with a different architecture for "while" behaviour.

I just discovered this and need to dig into it deeper, but there's a chance that this stems from the very fundamentals of how the run/ran signals are behaving, and thus large DAGs will also run into this problem.