[PATCH 11/11] Fetch maintainer information in one query
Stewart Smith
stewart at linux.ibm.com
Fri Aug 10 18:01:06 AEST 2018
Viewing the /project/ page lists maintainers. Prior to this patch,
this was done in one query to fetch the maintainer IDs, and then one
query per mainatiner to get the name/email address.
Now, with this patch, it's all in one query (yay joins) and saves
a few ms of database queries for displaying the page.
Realistically, this doesn't save us too much time as counting how many
patches are there takes 99% of the database time for this page.
Signed-off-by: Stewart Smith <stewart at linux.ibm.com>
---
patchwork/views/project.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/patchwork/views/project.py b/patchwork/views/project.py
index 2a75242a06af..fdcc6626eda1 100644
--- a/patchwork/views/project.py
+++ b/patchwork/views/project.py
@@ -66,7 +66,7 @@ def project_detail(request, project_id):
context = {
'project': project,
'maintainers': User.objects.filter(
- profile__maintainer_projects=project),
+ profile__maintainer_projects=project).select_related('profile'),
'n_patches': n_patches[False],
'n_archived_patches': n_patches[True],
'enable_xmlrpc': settings.ENABLE_XMLRPC,
--
2.17.1
More information about the Patchwork
mailing list