Skip to content

Commit

Permalink
GITC-675: Creating index for column contributor_address for faster qu… (
Browse files Browse the repository at this point in the history
#9881)

* GITC-675: Creating index for column contributor_address for faster querying.

* GITC-675: Simplifying the query, and query building
  • Loading branch information
nutrina authored Dec 14, 2021
1 parent d18337c commit 5651a0a
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 5 deletions.
17 changes: 17 additions & 0 deletions app/grants/migrations/0133_auto_20211214_1413.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Generated by Django 2.2.24 on 2021-12-14 14:13

from django.db import migrations, models


class Migration(migrations.Migration):

dependencies = [
('grants', '0132_auto_20211203_1427'),
]

operations = [
migrations.AddIndex(
model_name='subscription',
index=models.Index(fields=['contributor_address'], name='grants_subs_contrib_d72508_idx'),
),
]
5 changes: 5 additions & 0 deletions app/grants/models/subscription.py
Original file line number Diff line number Diff line change
Expand Up @@ -617,3 +617,8 @@ def create_contribution(self, tx_id, is_successful_contribution=True):

update_grant_metadata.delay(self.pk)
return contribution

class Meta:
indexes = [
models.Index(fields=['contributor_address',]),
]
6 changes: 1 addition & 5 deletions app/grants/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -3752,11 +3752,7 @@ def get_trust_bonus(request):
except:
return allow_all_origins(HttpResponse(status=400))

query = Q()
for address in addresses:
query |= Q(contributor_address=address)

subscriptions = Subscription.objects.filter(query).prefetch_related('contributor_profile')
subscriptions = Subscription.objects.filter(contributor_address__in=addresses).prefetch_related('contributor_profile')
response = []
_addrs = []
for subscription in subscriptions:
Expand Down

0 comments on commit 5651a0a

Please sign in to comment.