Skip to content

Commit 3a721f0

Browse files
mrduncanmchen-sentry
authored andcommitted
perf(tasks): Fix N+1 project queries in clear_expired_snoozes (#108793)
Add select_related("project") to the Group queryset so that group.project access in the loop (signal send and manage_issue_states) doesn't trigger a separate query per group.
1 parent f278f0a commit 3a721f0

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

src/sentry/tasks/clear_expired_snoozes.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,9 @@ def clear_expired_snoozes() -> None:
2626
groups_with_snoozes = {gs[1]: {"id": gs[0], "until": gs[2]} for gs in groupsnooze_list}
2727

2828
ignored_groups = list(
29-
Group.objects.filter(id__in=groups_with_snoozes.keys(), status=GroupStatus.IGNORED)
29+
Group.objects.filter(
30+
id__in=groups_with_snoozes.keys(), status=GroupStatus.IGNORED
31+
).select_related("project")
3032
)
3133

3234
GroupSnooze.objects.filter(id__in=group_snooze_ids).delete()

0 commit comments

Comments
 (0)