#12313: Fix yet another memory leak caused by caching of coercion data
-------------------------------------------------+--------------------------
       Reporter:  SimonKing                      |         Owner:               
                                        
           Type:  defect                         |        Status:  
positive_review                                      
       Priority:  major                          |     Milestone:  sage-pending 
                                        
      Component:  memleak                        |    Resolution:               
                                        
       Keywords:  coercion weak dictionary       |   Work issues:               
                                        
Report Upstream:  N/A                            |     Reviewers:  Simon King, 
Jean-Pierre Flori, John Perry, Nils Bruin
        Authors:  Simon King, Jean-Pierre Flori  |     Merged in:               
                                        
   Dependencies:  #715, #11521, #12215, #13746   |      Stopgaps:               
                                        
-------------------------------------------------+--------------------------
Changes (by nbruin):

  * status:  needs_review => positive_review


Comment:

 Works for me! By the way, as you can see from the patch I attached
 earlier, something must have gone wrong with applying the patches when I
 tested it. In the current version, `*Eraser` has a weak reference to its
 dict, and callbacks normally get cleared first, before any attributes get
 destroyed. So before `D.buckets` becomes `None`, we would already have
 `self.D() == None`. Therefore I'd be surprised if this latest patch is
 actually necessary. Anyway, given how tricky these deallocators are, I
 have no problem with a little extra (perhaps superfluous) tests.

 We have a future ticket to reorganize/optimize these dictionaries anyway.
 Let's get this in!

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12313#comment:272>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to