Markus Schirp
Markus Schirp
I do not recall the details on why we track the object ids instead of the objects themselves. But I've got some thoughts on the approach. Lets focus on the...
OT: I'd even go as far and assume that when somebody wants to freeze a cyclic, or "need to be GCed while frozen" datastructure a generic deep freeze like `ice_nine`...
`Gemfile.devtool` is obsolete. This repo can / should be updated not to use it anymore.
@dkubb I just reproduced it and also found the root cause. The freeze cache is subjected to race conditions when a non cached freezer gets looked up by two threads...
@dkubb I think you can merge this one now, as we have a "18support in branch" strategy. @sferik Would have to nuke this change again, which would be pretty easy...
@dkubb It would be possible to solve it that way. But I wounder if such a feature is actually needed. I'll refactor the morpher case soon not to expose a...
Correction I meant `#identification`.
@dkubb Yeah that a point. Each subclass should not be aware of any memoizer details in the parent class. But: I'd consider overwriting a memoized method a smell in itself....
@dkubb I think this will fix the problem. I'd move the `fail BlockNotAllowedError.new` above the `memoized_method_cache.fetch`.
@dkubb Yeah I see it now. Lets change it to what you suggested. Looks sane!