From 605a21a0cfd6a3cd74d5dc4b7c7d8eb14d592b69 Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Fri, 24 Jul 2020 15:28:57 +0200 Subject: [PATCH] Typeahead: Remove ordering of orders to improve query performance --- src/pretix/control/views/typeahead.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/pretix/control/views/typeahead.py b/src/pretix/control/views/typeahead.py index 7e5c8f3a7..b80bc41b2 100644 --- a/src/pretix/control/views/typeahead.py +++ b/src/pretix/control/views/typeahead.py @@ -163,7 +163,9 @@ def nav_context_list(request): qs_orga = qs_orga.filter(Q(name__icontains=query) | Q(slug__icontains=query)) if query: - qs_orders = Order.objects.filter(code__icontains=query).select_related('event', 'event__organizer') + qs_orders = Order.objects.filter( + code__icontains=query + ).select_related('event', 'event__organizer').only('event', 'code', 'pk').order_by() if not request.user.has_active_staff_session(request.session.session_key): qs_orders = qs_orders.filter( Q(event__organizer_id__in=request.user.teams.filter( @@ -172,7 +174,9 @@ def nav_context_list(request): can_view_orders=True).values_list('limit_events__id', flat=True)) ) - qs_vouchers = Voucher.objects.filter(code__icontains=query).select_related('event', 'event__organizer') + qs_vouchers = Voucher.objects.filter( + code__icontains=query + ).select_related('event', 'event__organizer').only('event', 'code', 'pk').order_by() if not request.user.has_active_staff_session(request.session.session_key): qs_vouchers = qs_vouchers.filter( Q(event__organizer_id__in=request.user.teams.filter(