#715: Parents probably not reclaimed due to too much caching
-------------------------------------------------------------------+--------
Reporter: robertwb |
Owner: somebody
Type: defect |
Status: needs_review
Priority: major |
Milestone: sage-5.4
Component: coercion |
Resolution:
Keywords: weak cache coercion Cernay2012 | Work
issues:
Report Upstream: N/A |
Reviewers: Jean-Pierre Flori, Simon King, Nils Bruin
Authors: Simon King, Jean-Pierre Flori | Merged
in:
Dependencies: #9138, #11900, #11599, to be merged with #11521 |
Stopgaps:
-------------------------------------------------------------------+--------
Comment (by nbruin):
Oops, wrong button. I meant to reply to [comment:282] but instead I edited
the text. You can still read the original under "previous". Here is the
reply:
{{{
sage: PF = WeylGroup(['A',3]).pieri_factors()
sage: %time a = PF.an_element()
}}}
I think `an_element` is exonerated. If you replace it with
`a=iter(PF).next()` you get the same element and the same segfault.
Further desperate facts that may or may not be relevant:
- if you make `TripleDict` strong on ''any'' of its keys, the segfault
disappears. That doesn't say no memory corruption happens of course.
- if you store all key triples fed into TripleDict (setting strong refs),
you find 220 keys before the tests run (i.e., just due to sage startup)
and 351 after (and no segfault of course). A set of the 151 new entries:
{{{
set([Full MatrixSpace of 4 by 4 sparse matrices over Integer Ring, Set of
Python objects of type 'long', Ring of integers modulo 389, Extended
weight space over the Rational Field of the Root system of type ['A', 3,
1], Full MatrixSpace of 4 by 4 dense matrices over Rational Field,
Multivariate Polynomial Ring in a, b, c, d over Rational Field, Weight
space over the Rational Field of the Root system of type ['A', 3], Coroot
lattice of the Root system of type ['A', 3, 1], Ambient space of the Root
system of type ['A', 3], Set of Python objects of type 'int', Weight
lattice of the Root system of type ['A', 3, 1], Vector space of dimension
4 over Rational Field, Weight lattice of the Root system of type ['A', 3],
Extended weight lattice of the Root system of type ['A', 3, 1], Full
MatrixSpace of 130 by 390 sparse matrices over Rational Field, <type
'int'>, Root space over the Rational Field of the Root system of type
['A', 3], Interface to the PARI C library, Integer Ring, Root space over
the Rational Field of the Root system of type ['A', 3, 1], The Infinity
Ring, Rational Field, Weight space over the Rational Field of the Root
system of type ['A', 3, 1], Root lattice of the Root system of type ['A',
3, 1], Multivariate Polynomial Ring in x, y, z over Rational Field, Full
MatrixSpace of 130 by 390 sparse matrices over Integer Ring, <type
'NoneType'>, Root lattice of the Root system of type ['A', 3], <type
'long'>])
}}}
Quite some entries involving "root systems" etc., so it's not so far
fetched to think that a bad deletion of something involving the
`WeylGroup` causes the memory corruption. In that case the corruption is
happening on all systems. It just only triggers a segfault on bsd. So
someone with good valgrind experience wanting to analyze the memory
management of the `cachefunc.pyx` doctests?
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/715#comment:290>
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.