#12313: Fix yet another memory leak caused by caching of coercion data
--------------------------------------------------+-------------------------
Reporter: SimonKing | Owner:
Type: defect | Status:
needs_review
Priority: major | Milestone: sage-5.3
Component: memleak | Resolution:
Keywords: coercion weak dictionary | Work issues:
Report Upstream: N/A | Reviewers: Simon King,
Jean-Pierre Flori, John Perry
Authors: Simon King, Jean-Pierre Flori | Merged in:
Dependencies: #11521, #11599, #12969, #12215 | Stopgaps:
--------------------------------------------------+-------------------------
Comment (by jpflori):
Here is the seemingly relevant part of the Valgrind output:
{{{
==14712== Invalid free() / delete / delete[] / realloc()
==14712== at 0x4C2B0BF: operator delete(void*)
(vg_replace_malloc.c:477)
==14712== by 0x2C653D62:
__pyx_tp_dealloc_4sage_5rings_10polynomial_5pbori_ReductionStrategy(_object*)
(ccobject.h:77)
==14712== by 0x2C5E9B52:
__pyx_tp_clear_4sage_5rings_10polynomial_5pbori_GroebnerStrategy(_object*)
(pbori.cpp:52486)
==14712== by 0x4F5AF96: collect (gcmodule.c:769)
==14712== by 0x4F5B728: gc_collect (gcmodule.c:1067)
==14712== by 0x4F21E44: PyEval_EvalFrameEx (ceval.c:4021)
==14712== by 0x4F23A94: PyEval_EvalCodeEx (ceval.c:3253)
==14712== by 0x4F21EBF: PyEval_EvalFrameEx (ceval.c:4117)
==14712== by 0x4F23A94: PyEval_EvalCodeEx (ceval.c:3253)
==14712== by 0x4F23BD1: PyEval_EvalCode (ceval.c:667)
==14712== by 0x4F4633F: PyRun_FileExFlags (pythonrun.c:1353)
==14712== by 0x4F46DDE: PyRun_SimpleFileExFlags (pythonrun.c:943)
==14712== by 0x4F5A294: Py_Main (main.c:639)
==14712== by 0x544A76C: (below main) (libc-start.c:226)
==14712== Address 0x21352000 is 96 bytes inside a block of size 448
alloc'd
==14712== at 0x4C2C054: operator new(unsigned long)
(vg_replace_malloc.c:295)
==14712== by 0x2C6541D9:
__pyx_pw_4sage_5rings_10polynomial_5pbori_16GroebnerStrategy_1__init__(_object*,
_object*, _object*) (pbori.cpp:39499)
==14712== by 0x4EDB457: type_call (typeobject.c:737)
==14712== by 0x4E7E7A2: PyObject_Call (abstract.c:2529)
==14712== by 0x2C61104A:
__pyx_pf_4sage_5rings_10polynomial_5pbori_22BooleanPolynomialIdeal_4groebner_basis(_object*,
_object*, _object*) [clone .isra.97] (pbori.cpp:31442)
==14712== by 0x2C6116D6:
__pyx_pw_4sage_5rings_10polynomial_5pbori_22BooleanPolynomialIdeal_5groebner_basis(_object*,
_object*, _object*) (pbori.cpp:31182)
==14712== by 0x4E7E7A2: PyObject_Call (abstract.c:2529)
==14712== by 0x4F20A6C: PyEval_EvalFrameEx (ceval.c:4239)
==14712== by 0x4F23A94: PyEval_EvalCodeEx (ceval.c:3253)
==14712== by 0x4F23BD1: PyEval_EvalCode (ceval.c:667)
==14712== by 0x4F21BFE: PyEval_EvalFrameEx (ceval.c:4718)
==14712== by 0x4F23A94: PyEval_EvalCodeEx (ceval.c:3253)
==14712== by 0x4EA674B: function_call (funcobject.c:526)
==14712== by 0x4E7E7A2: PyObject_Call (abstract.c:2529)
==14712== by 0x4E8BF1E: instancemethod_call (classobject.c:2578)
==14712== by 0x4E7E7A2: PyObject_Call (abstract.c:2529)
==14712== by 0x4F20A6C: PyEval_EvalFrameEx (ceval.c:4239)
==14712== by 0x4F23A94: PyEval_EvalCodeEx (ceval.c:3253)
==14712== by 0x4F21EBF: PyEval_EvalFrameEx (ceval.c:4117)
==14712== by 0x4F23A94: PyEval_EvalCodeEx (ceval.c:3253)
==14712== by 0x4EA674B: function_call (funcobject.c:526)
==14712== by 0x4E7E7A2: PyObject_Call (abstract.c:2529)
==14712== by 0x4E8BF1E: instancemethod_call (classobject.c:2578)
==14712== by 0x4E7E7A2: PyObject_Call (abstract.c:2529)
==14712== by 0x4F20A6C: PyEval_EvalFrameEx (ceval.c:4239)
==14712==
}}}
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12313#comment:234>
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.