1
0
mirror of https://github.com/django/django.git synced 2025-10-24 22:26:08 +00:00

[5.1.x] Fixed #35665 -- Fixed a crash when passing an empty order_by to Window.

This also caused un-ordered sliced prefetches to crash as they rely on Window.

Regression in e16d0c176e that made OrderByList
piggy-back ExpressionList without porting the empty handling that the latter
provided.

Supporting explicit empty ordering on Window functions and slicing is arguably
a foot-gun design due to how backends will return undeterministic results but
this is a problem that requires a larger discussion.

Refs #35064.

Thanks Andrew Backer for the report and Mariusz for the review.

Backport of 602fe961e6 from main.
This commit is contained in:
Simon Charette
2024-08-09 08:43:20 -04:00
committed by Sarah Boyce
parent dbca05698a
commit df236b0bcb
6 changed files with 38 additions and 13 deletions

View File

@@ -9,4 +9,6 @@ Django 5.1.1 fixes several bugs in 5.1.
Bugfixes
========
* ...
* Fixed a regression in Django 5.1 that caused a crash of ``Window()`` when
passing an empty sequence to the ``order_by`` parameter, and a crash of
``Prefetch()`` for a sliced queryset without ordering (:ticket:`35665`).