#18702: Remove chunked reads from iter(qs)
-------------------------------------+-------------------------------------
     Reporter:  akaariai             |                    Owner:  nobody
         Type:                       |                   Status:  new
  Cleanup/optimization               |                  Version:  1.4
    Component:  Database layer       |               Resolution:
  (models, ORM)                      |             Triage Stage:  Accepted
     Severity:  Normal               |      Needs documentation:  0
     Keywords:                       |  Patch needs improvement:  0
    Has patch:  1                    |                    UI/UX:  0
  Needs tests:  0                    |
Easy pickings:  0                    |
-------------------------------------+-------------------------------------

Comment (by akaariai):

 I am going to commit the patch this weekend if nobody objects.

 A very short summary: the patch will make "half-iterating" a queryset cost
 more (as all the rows are converted upfront), but on the other hand full
 iteration will be faster. Cases hit are "obj in largeqs" without needing
 the rest of the qs, or "for obj in qs: if somecond: break".

 One of the original reasons for the patch, discard of some exceptions, is
 fixed by #19895 - but there is a comment in the ticket that says the fix
 is causing a serious memory leak. This is hard to verify as there aren't
 any details. Still, the comment is from core developer so it is very
 likely that the commit does cause memory leak under some conditions.

 Rebased patch available from
 https://github.com/akaariai/django/tree/non_chunked_iter_squashed.

-- 
Ticket URL: <https://code.djangoproject.com/ticket/18702#comment:4>
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 django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to