Re: [Django] #36648: "pk" exception when using first() on unordered queryset with aggregation does not consider composite pk fields provided separately

8 views
Skip to first unread message

Django

unread,
Oct 10, 2025, 11:25:31 AM10/10/25
to django-...@googlegroups.com
#36648: "pk" exception when using first() on unordered queryset with aggregation
does not consider composite pk fields provided separately
-------------------------------------+-------------------------------------
Reporter: Jacob Walls | Owner: Jacob
| Walls
Type: Bug | Status: assigned
Component: Database layer | Version: 5.2
(models, ORM) |
Severity: Release blocker | Resolution:
Keywords: compositepk | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Jacob Walls):

* owner: (none) => Jacob Walls
* status: new => assigned

--
Ticket URL: <https://code.djangoproject.com/ticket/36648#comment:3>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

Django

unread,
Oct 13, 2025, 5:25:44 PM10/13/25
to django-...@googlegroups.com
#36648: "pk" exception when using first() on unordered queryset with aggregation
does not consider composite pk fields provided separately
-------------------------------------+-------------------------------------
Reporter: Jacob Walls | Owner: Jacob
| Walls
Type: Bug | Status: assigned
Component: Database layer | Version: 5.2
(models, ORM) |
Severity: Release blocker | Resolution:
Keywords: compositepk | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Jacob Walls):

* has_patch: 0 => 1

Comment:

[https://github.com/django/django/pull/19955 PR]
--
Ticket URL: <https://code.djangoproject.com/ticket/36648#comment:4>

Django

unread,
Oct 14, 2025, 1:52:27 PM10/14/25
to django-...@googlegroups.com
#36648: "pk" exception when using first() on unordered queryset with aggregation
does not consider composite pk fields provided separately
-------------------------------------+-------------------------------------
Reporter: Jacob Walls | Owner: Jacob
| Walls
Type: Bug | Status: assigned
Component: Database layer | Version: 5.2
(models, ORM) |
Severity: Release blocker | Resolution:
Keywords: compositepk | Triage Stage: Ready for
| checkin
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Natalia Bidart):

* stage: Accepted => Ready for checkin

--
Ticket URL: <https://code.djangoproject.com/ticket/36648#comment:5>

Django

unread,
Oct 14, 2025, 3:48:40 PM10/14/25
to django-...@googlegroups.com
#36648: "pk" exception when using first() on unordered queryset with aggregation
does not consider composite pk fields provided separately
-------------------------------------+-------------------------------------
Reporter: Jacob Walls | Owner: Jacob
| Walls
Type: Bug | Status: closed
Component: Database layer | Version: 5.2
(models, ORM) |
Severity: Release blocker | Resolution: fixed
Keywords: compositepk | Triage Stage: Ready for
| checkin
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Jacob Walls <jacobtylerwalls@…>):

* resolution: => fixed
* status: assigned => closed

Comment:

In [changeset:"02eed4f37879b2077496f86bb1378a076b981233" 02eed4f]:
{{{#!CommitTicketReference repository=""
revision="02eed4f37879b2077496f86bb1378a076b981233"
Fixed #36648, Refs #33772 -- Accounted for composite pks in first()/last()
when aggregating.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/36648#comment:6>

Django

unread,
Oct 14, 2025, 3:50:28 PM10/14/25
to django-...@googlegroups.com
#36648: "pk" exception when using first() on unordered queryset with aggregation
does not consider composite pk fields provided separately
-------------------------------------+-------------------------------------
Reporter: Jacob Walls | Owner: Jacob
| Walls
Type: Bug | Status: closed
Component: Database layer | Version: 5.2
(models, ORM) |
Severity: Release blocker | Resolution: fixed
Keywords: compositepk | Triage Stage: Ready for
| checkin
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Jacob Walls <jacobtylerwalls@…>):

In [changeset:"28c95a35fbf1a64bb342f622a90fbaaf46315819" 28c95a35]:
{{{#!CommitTicketReference repository=""
revision="28c95a35fbf1a64bb342f622a90fbaaf46315819"
[6.0.x] Fixed #36648, Refs #33772 -- Accounted for composite pks in
first()/last() when aggregating.

Backport of 02eed4f37879b2077496f86bb1378a076b981233 from main.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/36648#comment:7>

Django

unread,
Oct 14, 2025, 3:50:44 PM10/14/25
to django-...@googlegroups.com
#36648: "pk" exception when using first() on unordered queryset with aggregation
does not consider composite pk fields provided separately
-------------------------------------+-------------------------------------
Reporter: Jacob Walls | Owner: Jacob
| Walls
Type: Bug | Status: closed
Component: Database layer | Version: 5.2
(models, ORM) |
Severity: Release blocker | Resolution: fixed
Keywords: compositepk | Triage Stage: Ready for
| checkin
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Jacob Walls <jacobtylerwalls@…>):

In [changeset:"8baee531d40cd6ee8b342dbcf2c7924d20694969" 8baee53]:
{{{#!CommitTicketReference repository=""
revision="8baee531d40cd6ee8b342dbcf2c7924d20694969"
[5.2.x] Fixed #36648, Refs #33772 -- Accounted for composite pks in
first()/last() when aggregating.

Backport of 02eed4f37879b2077496f86bb1378a076b981233 from main.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/36648#comment:8>

Django

unread,
Oct 15, 2025, 11:44:25 PM10/15/25
to django-...@googlegroups.com
#36648: "pk" exception when using first() on unordered queryset with aggregation
does not consider composite pk fields provided separately
-------------------------------------+-------------------------------------
Reporter: Jacob Walls | Owner: Jacob
| Walls
Type: Bug | Status: closed
Component: Database layer | Version: 5.2
(models, ORM) |
Severity: Release blocker | Resolution: fixed
Keywords: compositepk | Triage Stage: Ready for
| checkin
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Jacob Walls <jacobtylerwalls@…>):

In [changeset:"bee64561a6e8cd22995c2b1254bab66dae892a6d" bee6456]:
{{{#!CommitTicketReference repository=""
revision="bee64561a6e8cd22995c2b1254bab66dae892a6d"
Refs #36648 -- Removed hardcoded pk in CompositePKAggregateTests.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/36648#comment:9>

Django

unread,
Oct 15, 2025, 11:45:41 PM10/15/25
to django-...@googlegroups.com
#36648: "pk" exception when using first() on unordered queryset with aggregation
does not consider composite pk fields provided separately
-------------------------------------+-------------------------------------
Reporter: Jacob Walls | Owner: Jacob
| Walls
Type: Bug | Status: closed
Component: Database layer | Version: 5.2
(models, ORM) |
Severity: Release blocker | Resolution: fixed
Keywords: compositepk | Triage Stage: Ready for
| checkin
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Jacob Walls <jacobtylerwalls@…>):

In [changeset:"2cc90728defa891332fe3894b6a8fd7c56bcd7c3" 2cc9072]:
{{{#!CommitTicketReference repository=""
revision="2cc90728defa891332fe3894b6a8fd7c56bcd7c3"
[6.0.x] Refs #36648 -- Removed hardcoded pk in CompositePKAggregateTests.

Backport of bee64561a6e8cd22995c2b1254bab66dae892a6d from main.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/36648#comment:10>

Django

unread,
Oct 15, 2025, 11:46:06 PM10/15/25
to django-...@googlegroups.com
#36648: "pk" exception when using first() on unordered queryset with aggregation
does not consider composite pk fields provided separately
-------------------------------------+-------------------------------------
Reporter: Jacob Walls | Owner: Jacob
| Walls
Type: Bug | Status: closed
Component: Database layer | Version: 5.2
(models, ORM) |
Severity: Release blocker | Resolution: fixed
Keywords: compositepk | Triage Stage: Ready for
| checkin
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Jacob Walls <jacobtylerwalls@…>):

In [changeset:"dc61f205781733f41dd3630f5ca48bccda6c0cbc" dc61f20]:
{{{#!CommitTicketReference repository=""
revision="dc61f205781733f41dd3630f5ca48bccda6c0cbc"
[5.2.x] Refs #36648 -- Removed hardcoded pk in CompositePKAggregateTests.

Backport of bee64561a6e8cd22995c2b1254bab66dae892a6d from main.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/36648#comment:11>
Reply all
Reply to author
Forward
0 new messages