#36701: ModelState objects create reference cycles that require a gc pass to
free
-------------------------------------+-------------------------------------
Reporter: Patryk Zawadzki | Owner: (none)
Type: | Status: new
Cleanup/optimization |
Component: Database layer | Version: dev
(models, ORM) |
Severity: Normal | Resolution:
Keywords: memory gc | Triage Stage: Accepted
modelstate fields_cache |
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Jacob Walls):
* stage: Unreviewed => Accepted
* type: Bug => Cleanup/optimization
* version: 5.2 => dev
Comment:
Hi Patryk, thanks for the careful report.
[https://docs.python.org/3/whatsnew/3.14.html#incremental-garbage-
collection Incremental garbage collection] is new in Python 3.14 and might
make most of your headaches here go away:
> This means that maximum pause times are reduced by an order of magnitude
or more for larger heaps.
> There are now only two generations: young and old.
The behavior difference between foreign keys and one-to-one fields here is
surprising, though. Tentatively accepting so we can look at a patch.
Thanks.
--
Ticket URL: <https://code.djangoproject.com/ticket/36701#comment:1>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion visit
https://groups.google.com/d/msgid/django-updates/0107019a3bbe63d2-c0f396e9-5c7a-45b5-92f6-a59263bd2a07-000000%40eu-central-1.amazonses.com.