mirror of
https://github.com/django/django.git
synced 2025-08-04 10:59:45 +00:00
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.
This commit is contained in:
parent
5ae9922666
commit
602fe961e6
6 changed files with 38 additions and 13 deletions
|
@ -2315,11 +2315,6 @@ class ValueTests(TestCase):
|
|||
self.assertNotEqual(value, other_value)
|
||||
self.assertNotEqual(value, no_output_field)
|
||||
|
||||
def test_raise_empty_expressionlist(self):
|
||||
msg = "ExpressionList requires at least one expression"
|
||||
with self.assertRaisesMessage(ValueError, msg):
|
||||
ExpressionList()
|
||||
|
||||
def test_compile_unresolved(self):
|
||||
# This test might need to be revisited later on if #25425 is enforced.
|
||||
compiler = Time.objects.all().query.get_compiler(connection=connection)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue