bpo-42972: Fix sqlite3 traverse/clear#26452
Conversation
|
Whenever you have time, Pablo & Victor. |
Sorry, something went wrong.
bce1100 to
2e7f768
Compare
May 29, 2021 18:42
2e7f768 to
62bbb5c
Compare
May 29, 2021 18:46
|
🤖 New build scheduled with the buildbot fleet by @pablogsal for commit 62bbb5c 🤖 If you want to schedule another build, you need to add the ":hammer: test-with-buildbots" label again. |
Sorry, something went wrong.
|
PPC64LE Fedora Stable Refleaks PR: buildbot/AMD64 Windows8.1 Refleaks PR:
|
Sorry, something went wrong.
vstinner
left a comment
There was a problem hiding this comment.
LGTM. I checked that all Python objects are visited in traverse functions, and that clear functions clear all objects visited in traverse functions.
The coding style issue is not worth to require another revision.
Sorry, something went wrong.
|
Thanks @erlend-aasland for the PR, and @vstinner for merging it 🌮🎉.. I'm working now to backport this PR to: 3.10. |
Sorry, something went wrong.
(cherry picked from commit d1124b0) Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@innova.no>
|
@erlend-aasland: While reviewing traverse/clear functions, I noticed surprising code in pysqlite_cache_dealloc(): PyObject_GC_UnTrack() is not called if pysqlite_cache_init() failed, IMO it's a bug: the object is tracked in new, not in init. Note: pysqlite_cache_init() doesn't use Py_SETREF() or Py_CLEAR() and so leaks references if called manually twice. Well, nobody should do that ;-) |
Sorry, something went wrong.
Yes, those are unfortunate issues :) However, they'll soon (hopefully) begone! Hint: #24203 😃 (You're welcome to take a look at that, if you find time) |
Sorry, something went wrong.
⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️Hi! The buildbot x86 Gentoo Installed with X 3.x has failed when building commit d1124b0. What do you need to do:
You can take a look at the buildbot page here: https://buildbot.python.org/all/#builders/464/builds/292 Failed tests:
Failed subtests:
Summary of the results of the build (if available): == Tests result: FAILURE then FAILURE == 412 tests OK. 1 test failed: 14 tests skipped: 1 re-run test: Total duration: 26 min 43 sec Click to see traceback logsTraceback (most recent call last):
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.installed/build/target/lib/python3.11/idlelib/idle_test/tkinter_testing_utils.py", line 54, in new_test_method
raise exception
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.installed/build/target/lib/python3.11/idlelib/idle_test/tkinter_testing_utils.py", line 38, in after_callback
next(test_generator)
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.installed/build/target/lib/python3.11/idlelib/idle_test/test_colorizer.py", line 573, in test_incremental_editing
eq(text.tag_nextrange('BUILTIN', '1.0'), ('1.0', '1.3'))
AssertionError: Tuples differ: () != ('1.0', '1.3')
Traceback (most recent call last):
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.installed/build/target/lib/python3.11/idlelib/idle_test/tkinter_testing_utils.py", line 54, in new_test_method
raise exception
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.installed/build/target/lib/python3.11/idlelib/idle_test/tkinter_testing_utils.py", line 38, in after_callback
next(test_generator)
File "/buildbot/buildarea/cpython/3.x.ware-gentoo-x86.installed/build/target/lib/python3.11/idlelib/idle_test/test_colorizer.py", line 569, in test_incremental_editing
eq(text.tag_nextrange('KEYWORD', '1.0'), ('1.0', '1.2'))
AssertionError: Tuples differ: () != ('1.0', '1.2')
|
Sorry, something went wrong.
GH-26104 had some issues:
Py_tp_cleariso.Py_tp_deallocThis PR fixes these issues.
https://bugs.python.org/issue42972