Closed MicahGale closed 1 month ago
I think we need __weakref__
for self._problem
Also to implement #469
Temporary workaround:
problem =...
base_cell = problem.cells[1]
base_cell._problem = None
new_cell = copy.deepcopy(base_cell)
base_cell.link_to_problem(problem)
... # make more copies if needed, etc
new_cell.link_to_problem(problem)
This still isn't super memory efficient, but it works well enough.
I have a hunch that this is causing #463.
Weakref does in fact resolve this, but breaks pickle.
I have a hunch that this is causing #463.
I tried fixing #463 with #539, and it does not seem to address the problem at all. But this would help break the infinite recursion that makes debugging impossible.
So I was making a lot of copies of a cell with
copy.deepcopy
and it went very badlyThis script kept crashing. It got really slow around
i==11
and was using over 3GB of RAM!This is very telling for when I ran ctrl-C:
We have a copy recursion problem.