Message301075
| Author |
vstinner |
| Recipients |
brett.cannon, pitrou, vstinner, zach.ware |
| Date |
2017年08月31日.23:48:23 |
| SpamBayes Score |
-1.0 |
| Marked as misclassified |
Yes |
| Message-id |
<1504223303.13.0.241300965127.issue31217@psf.upfronthosting.co.za> |
| In-reply-to |
| Content |
Antoine: "I doubt it. If that was the case, the reference count would increase as well."
The bug is really weird :-)
Antoine: "Actually, leak2.py doesn't attempt to cleanup anything between runs, so it can't be reliable for detecting leaks. You lack dash_R_cleanup() somewhere."
I simplified dash_R_cleanup() and at the end, it was empty :-) I don't see how the test_current_frames() would need to clear any kind of cache.
Maybe:
* sys._clear_type_cache()
* gc.collect()
* C function clear_freelists() of gcmodule.c
But I tried to call these functions, and it doesn't change anything.
I don't see how calling set.add() and set.discard() would impact any cache, except of maybe of a free list?
The strange thing is that calling dangling.clear() explicitly in test_current_frames() "fixes the leak" (hides the bug?). But any tiny change on this file also hides the bug. The script is very fragile. |
|
History
|
|---|
| Date |
User |
Action |
Args |
| 2017年08月31日 23:48:23 | vstinner | set | recipients:
+ vstinner, brett.cannon, pitrou, zach.ware |
| 2017年08月31日 23:48:23 | vstinner | set | messageid: <1504223303.13.0.241300965127.issue31217@psf.upfronthosting.co.za> |
| 2017年08月31日 23:48:23 | vstinner | link | issue31217 messages |
| 2017年08月31日 23:48:23 | vstinner | create |
|