-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
Minor - P4
-
None
-
Affects Version/s: None
-
Component/s: django
-
None
-
None
-
Python Drivers
-
None
-
None
-
None
-
None
-
None
-
None
SQL examples from Django's "defer" test app (since it lacks MQL tests, this bug went undetected):
>>> Primary.objects.defer("name") SELECT "defer_primary"."id", "defer_primary"."value", "defer_primary"."related_id" FROM "defer_primary >>> Primary.objects.only("only") SELECT "defer_primary"."id", "defer_primary"."name" FROM "defer_primary
On MongoDB, the queries don't include the necessary $project to limit the keys returned: db.defer_primary.aggregate([\{'$limit': 1}])
Probably logic in SQLCompiler.columns is at fault. Query.get_select_mask() is where the deferred columns are computed.