Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
It looks like there was a change in Django 4.0 that broke the
django-cte
explain functionality.See:
This wasn't picked up by the unit tests because we manually set
explain_query = True
(which is now unused) rather than call the.explain()
queryset method.This PR adds some logic to retrieve
explain_query
for Django < 4.0, andexplain_info
for Django >= 4.0. It also updates the unit tests to call.explain()
(which appears to work onsqlite3
as far as I can tell).There's probably a cleaner way to do this, so feel free rework if you see fit.