From c03900dff4efd9d946f2fe0b6aa3f6a711663207 Mon Sep 17 00:00:00 2001 From: Jonathan Weth <git@jonathanweth.de> Date: Sun, 20 Feb 2022 16:57:30 +0100 Subject: [PATCH] Optimise query in sync_children --- aleksis/apps/matrix/models.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/aleksis/apps/matrix/models.py b/aleksis/apps/matrix/models.py index 597a9af..381d555 100644 --- a/aleksis/apps/matrix/models.py +++ b/aleksis/apps/matrix/models.py @@ -289,13 +289,13 @@ class MatrixSpace(MatrixRoom): current_children = self.get_children() child_spaces = MatrixSpace.get_queryset().filter( group__in=self.group.child_groups.filter(child_groups__isnull=False) - ) + ).values_list("room_id", flat=True) child_rooms = MatrixRoom.get_queryset().filter( Q(group__in=self.group.child_groups.filter(child_groups__isnull=True)) | Q(group=self.group) - ) + ).values_list("room_id", flat=True) - child_ids = [m.room_id for m in list(child_spaces) + list(child_rooms)] + child_ids = list(child_spaces) + list(child_rooms) missing_ids = set(child_ids).difference(set(current_children)) -- GitLab