[Python-Dev] No longer enable Py_TRACE_REFS by default in debug build (original) (raw)
Michael Sullivan sully at msully.net
Mon Apr 15 18:23:10 EDT 2019
- Previous message (by thread): [Python-Dev] No longer enable Py_TRACE_REFS by default in debug build
- Next message (by thread): [Python-Dev] No longer enable Py_TRACE_REFS by default in debug build
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
The main question is if anyone ever used PyTRACEREFS? Does someone use sys.getobjects() or PYTHONDUMPREFS environment variable?
I used sys.getobjects() today to track down a memory leak in the mypyc-compiled version of mypy.
We were leaking memory badly but no sign of the leak was showing up in mypy's gc.get_objects() based profiler. Using a debug build and switching to sys.getobjects() showed that we were badly leaking int objects. A quick inspection of the values in question (large and random looking) suggested we were leaking hash values, and that quickly pointed me to https://github.com/mypyc/mypyc/pull/562.
I don't have any strong feelings about whether to keep it in the "default" debug build, though. I was using a debug build that I built myself with every debug feature that seemed potentially useful.
-sully -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.python.org/pipermail/python-dev/attachments/20190415/291b3792/attachment.html>
- Previous message (by thread): [Python-Dev] No longer enable Py_TRACE_REFS by default in debug build
- Next message (by thread): [Python-Dev] No longer enable Py_TRACE_REFS by default in debug build
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]