[Python-Dev] No longer enable Py_TRACE_REFS by default in debug build (original) (raw)
Victor Stinner vstinner at redhat.com
Wed Apr 10 18:29:34 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 ]
Le mer. 10 avr. 2019 à 20:09, Steve Dower <steve.dower at python.org> a écrit :
> The main question is if anyone ever used PyTRACEREFS? Does someone > use sys.getobjects() or PYTHONDUMPREFS environment variable? > > Using PYTHONDUMPREFS=1 on a debug build (with PyTRACEREFS) does > simply crash Python 3.7 at exit. So I don't think that anyone use it > :-)
How do we track reference leaks in the buildbots? Can/should we be using this?
Ah, maybe there is a misunderstanding. You don't need Py_TRACE_REFS to track memory leaks: "python3 -m test -R 3:3" works without that. test_regrtest contains an unit test for reference leaks (I know it that I wrote the test :-)), and you can see that the test pass on my PR. I also checked manually by adding a memory leak into a test: it is still detected :-)
regrtest uses sys.gettotalrefcount(), sys.getallocatedblocks() and support.fd_count() to track reference, memory and file descriptor leaks. None of these functions are related to Py_TRACE_REFS.
Again, the question is who rely on Py_TRACE_REFS. If nobody rely on it, I don't see the point of keeping this expensive feature (at least, not by default).
It doesn't crash on Python 3.8, so I suspect fixing the bug is a better option than using it as an excuse to remove the feature.
It's not what I said. I only said that it seems that nobody uses PYTHONDUMPREFS, since it's broken for a long time. It's just a hint about the usage of Py_TRACE_REFS.
I don't propose to remove the feature, but to disable it by default.
Victor
Night gathers, and now my watch begins. It shall not end until my death.
- 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 ]