From 30c3f19d8074f7f66ca0f9d594cbb8e3e12efa41 Mon Sep 17 00:00:00 2001 From: Timotheus Pokorra Date: Wed, 25 Aug 2021 18:02:23 +0200 Subject: [PATCH] add indexes to improve the speed of calc.py fixes #33 --- ...changerate_exchangerat_crypto__8e5f68_idx.py | 17 +++++++++++++++++ apps/rates/models.py | 4 ++++ ...ransaction_transaction_crypto__de924d_idx.py | 17 +++++++++++++++++ apps/transactions/models.py | 4 ++++ 4 files changed, 42 insertions(+) create mode 100644 apps/rates/migrations/0002_exchangerate_exchangerat_crypto__8e5f68_idx.py create mode 100644 apps/transactions/migrations/0007_transaction_transaction_crypto__de924d_idx.py diff --git a/apps/rates/migrations/0002_exchangerate_exchangerat_crypto__8e5f68_idx.py b/apps/rates/migrations/0002_exchangerate_exchangerat_crypto__8e5f68_idx.py new file mode 100644 index 0000000..ce517d9 --- /dev/null +++ b/apps/rates/migrations/0002_exchangerate_exchangerat_crypto__8e5f68_idx.py @@ -0,0 +1,17 @@ +# Generated by Django 3.2.5 on 2021-08-25 15:58 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('rates', '0001_initial'), + ] + + operations = [ + migrations.AddIndex( + model_name='exchangerate', + index=models.Index(fields=['crypto_currency', 'fiat_currency', 'datetime_valid'], name='exchangerat_crypto__8e5f68_idx'), + ), + ] diff --git a/apps/rates/models.py b/apps/rates/models.py index ba9684d..86c4dea 100644 --- a/apps/rates/models.py +++ b/apps/rates/models.py @@ -8,3 +8,7 @@ class ExchangeRate(models.Model): datetime_valid = models.DateTimeField('datetime valid') class Meta: db_table = "exchangerate" + + indexes = [ + models.Index(fields=['crypto_currency', 'fiat_currency', 'datetime_valid',]), + ] diff --git a/apps/transactions/migrations/0007_transaction_transaction_crypto__de924d_idx.py b/apps/transactions/migrations/0007_transaction_transaction_crypto__de924d_idx.py new file mode 100644 index 0000000..9e99076 --- /dev/null +++ b/apps/transactions/migrations/0007_transaction_transaction_crypto__de924d_idx.py @@ -0,0 +1,17 @@ +# Generated by Django 3.2.5 on 2021-08-25 15:58 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('transactions', '0006_auto_20210511_2230'), + ] + + operations = [ + migrations.AddIndex( + model_name='transaction', + index=models.Index(fields=['crypto_currency', 'owner', 'transaction_type'], name='transaction_crypto__de924d_idx'), + ), + ] diff --git a/apps/transactions/models.py b/apps/transactions/models.py index dcee8a9..4f41657 100644 --- a/apps/transactions/models.py +++ b/apps/transactions/models.py @@ -44,3 +44,7 @@ class Transaction(models.Model): class Meta: db_table = "transaction" + + indexes = [ + models.Index(fields=['crypto_currency', 'owner', 'transaction_type',]), + ]