[Python-Dev] Discussion related to memory leaks requested

Benjamin Peterson benjamin at python.org
Thu Jan 14 00:42:24 EST 2016


This is a "well-known" issue. Parts of the interpreter (and especially,
extension modules) cheerfully stash objects in global variables with no
way to clean them up. Fixing this is a large project, which probably
involves implementing PEP 489.

On Wed, Jan 13, 2016, at 11:32, Matthew Paulson wrote:
> Hi:
> 
> I've spent some time performing memory leak analysis while using Python 
> in an embedded configuration.
> 
> The pattern is:
> 
>     Py_Initialize();
> 
>     ... run empty python source file ...
> 
>     Py_Finalize();
> 
> 
> I've identified several suspect areas including dictionary maitenace in 
> import.c:~ 414
> 
>      /* Clear the modules dict. */
>      PyDict_Clear(modules);
>      /* Restore the original builtins dict, to ensure that any
>         user data gets cleared. */
>      dict = PyDict_Copy(interp->builtins);
>      if (dict == NULL)
>          PyErr_Clear();
>      PyDict_Clear(interp->builtins);
>      if (PyDict_Update(interp->builtins, interp->builtins_copy))
>          PyErr_Clear();
>      Py_XDECREF(dict);
>      /* Clear module dict copies stored in the interpreter state */
> 
> 
> Is there someone in the group that would like to discuss this topic.  
> There seems to be other leaks as well.  I'm new to Python-dev, but 
> willing to help or work with someone who is more familiar with these 
> areas than I.
> 
> Thanks,
> 
> Matt
> 
> 
> -- 
> _______________________________________________
> Python-Dev mailing list
> Python-Dev at python.org
> https://mail.python.org/mailman/listinfo/python-dev
> Unsubscribe:
> https://mail.python.org/mailman/options/python-dev/benjamin%40python.org
> Email had 1 attachment:
> + MattSig.JPG
>   52k (image/jpeg)


More information about the Python-Dev mailing list