Opened 3 years ago

Last modified 10 months ago

#28455 new Cleanup/optimization

Create "inplace" QuerySets to speed up certain operations

Reported by: Anssi Kääriäinen Owned by: nobody
Component: Database layer (models, ORM) Version: master
Severity: Normal Keywords:
Cc: Simon Charette Triage Stage: Accepted
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no


Part two of #20880: Inplace querysets work precisely like full-clone querysets. A queryset is called inplace if it doesn't do cloning at all between operations. This again allows speeding up certain internal operations like and prefetch_related(), and also allows users to optimise heavy-to-create querysets by avoiding clone() overhead.

Change History (2)

comment:1 Changed 3 years ago by Tim Graham

I rebased work from Anssi's branch. I guess the plan was to keep "inplace" as a private API initially (hence the underscore prefix) but I'm not sure. Someone else is welcome to continue this work. I'm not planning to continue it soon.

comment:2 Changed 10 months ago by Simon Charette

Cc: Simon Charette added
Note: See TracTickets for help on using tickets.
Back to Top