The logic to display the Check(s) on the patch list wants to really do a
DISTINCT(user_id,context) ORDER BY DATE query, but with Django that is
currently a bit Too Hard (at least for me).

But what we can do is from python just use the user_id rather than the
user object itself. Same functionality, no join or prefetching users.

This saves a couple of hundred queries on the linuxppc/list/ view and
makes loading it about 4x faster in terms of time spent in the db.

Signed-off-by: Stewart Smith <stew...@linux.ibm.com>
---
 patchwork/models.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/patchwork/models.py b/patchwork/models.py
index 15224ad69cfa..d356a6379ac3 100644
--- a/patchwork/models.py
+++ b/patchwork/models.py
@@ -539,7 +539,7 @@ class Patch(SeriesMixin, Submission):
 
         for check in self.check_set.all():
             ctx = check.context
-            user = check.user
+            user = check.user_id
 
             if user in unique and ctx in unique[user]:
                 # recheck condition - ignore the older result
-- 
2.17.1

_______________________________________________
Patchwork mailing list
Patchwork@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/patchwork

Reply via email to