Page MenuHome

Fix T92423: Blender freeze rendering animation with Mantaflow
ClosedPublic

Authored by Sergey Sharybin (sergey) on Oct 27 2021, 2:44 PM.

Details

Summary

Mantaflow could steal tasks from dependency graph, which under
certain conditions causes a recursive lock involving GIL.

Isolate threading done in mantaflow when it is interfaced form
the dependency graph.

Isolation done from the modifier, since the deeper calls are
branching out quite quickly.

Diff Detail

Repository
rB Blender
Branch
fix_T92423 (branched from master)
Build Status
Buildable 18262
Build 18262: arc lint + arc unit

Event Timeline

Sergey Sharybin (sergey) requested review of this revision.Oct 27 2021, 2:44 PM
Sergey Sharybin (sergey) created this revision.

While testing the fix I've once run into if (used != 0) errMsg("can't clean grid cache, some grids are still in use"); trigger from FluidSolver::GridStorage<T>::free(). Can not reproduce it so far, but doesn't seem to be related on the isolation.

This revision is now accepted and ready to land.Oct 27 2021, 2:49 PM