From 35a9a723aa7a489bff2e86bc05ffea08b4050ab6 Mon Sep 17 00:00:00 2001 From: Son Nguyen Kim Date: Wed, 4 Aug 2021 08:57:13 +0200 Subject: [PATCH] add index for Alias name and email column --- app/models.py | 4 +-- .../versions/2021_080408_3ff44646ff95_.py | 33 +++++++++++++++++++ 2 files changed, 35 insertions(+), 2 deletions(-) create mode 100644 migrations/versions/2021_080408_3ff44646ff95_.py diff --git a/app/models.py b/app/models.py index 0a9ce9e6..6c1cd617 100644 --- a/app/models.py +++ b/app/models.py @@ -1047,10 +1047,10 @@ class Alias(db.Model, ModelMixin): user_id = db.Column( db.ForeignKey(User.id, ondelete="cascade"), nullable=False, index=True ) - email = db.Column(db.String(128), unique=True, nullable=False) + email = db.Column(db.String(128), unique=True, nullable=False, index=True) # the name to use when user replies/sends from alias - name = db.Column(db.String(128), nullable=True, default=None) + name = db.Column(db.String(128), nullable=True, default=None, index=True) enabled = db.Column(db.Boolean(), default=True, nullable=False) diff --git a/migrations/versions/2021_080408_3ff44646ff95_.py b/migrations/versions/2021_080408_3ff44646ff95_.py new file mode 100644 index 00000000..7d51a11f --- /dev/null +++ b/migrations/versions/2021_080408_3ff44646ff95_.py @@ -0,0 +1,33 @@ +"""empty message + +Revision ID: 3ff44646ff95 +Revises: ffa75d04e6ef +Create Date: 2021-08-04 08:57:00.946968 + +""" +import sqlalchemy_utils +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision = '3ff44646ff95' +down_revision = 'ffa75d04e6ef' +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.create_index(op.f('ix_alias_email'), 'alias', ['email'], unique=True) + op.create_index(op.f('ix_alias_name'), 'alias', ['name'], unique=False) + op.drop_constraint('gen_email_email_key', 'alias', type_='unique') + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.create_unique_constraint('gen_email_email_key', 'alias', ['email']) + op.drop_index(op.f('ix_alias_name'), table_name='alias') + op.drop_index(op.f('ix_alias_email'), table_name='alias') + # ### end Alembic commands ###