summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAurélien Bompard2015-11-19 23:06:14 +0100
committerBarry Warsaw2015-11-21 12:42:08 -0500
commit9708493d1ad982895f4250c491a04a4f575310cf (patch)
tree9f64658344150538fbd7c4b731cb252c4a809c52 /src
parent0226456bc4cae5f8f4273fdec5b7a9b41bbee072 (diff)
downloadmailman-9708493d1ad982895f4250c491a04a4f575310cf.tar.gz
mailman-9708493d1ad982895f4250c491a04a4f575310cf.tar.zst
mailman-9708493d1ad982895f4250c491a04a4f575310cf.zip
Diffstat (limited to 'src')
-rw-r--r--src/mailman/database/alembic/versions/33bc0099223_add_member_indexes.py35
-rw-r--r--src/mailman/model/address.py2
-rw-r--r--src/mailman/model/member.py6
3 files changed, 39 insertions, 4 deletions
diff --git a/src/mailman/database/alembic/versions/33bc0099223_add_member_indexes.py b/src/mailman/database/alembic/versions/33bc0099223_add_member_indexes.py
new file mode 100644
index 000000000..beca161c6
--- /dev/null
+++ b/src/mailman/database/alembic/versions/33bc0099223_add_member_indexes.py
@@ -0,0 +1,35 @@
+"""Add member indexes
+
+Revision ID: 33bc0099223
+Revises: 42756496720
+Create Date: 2015-11-19 23:04:42.449553
+
+"""
+
+# Revision identifiers, used by Alembic.
+revision = '33bc0099223'
+down_revision = '42756496720'
+
+from alembic import op
+
+
+def upgrade():
+ op.create_index(op.f('ix_member_address_id'),
+ 'member', ['address_id'],
+ unique=False)
+ op.create_index(op.f('ix_member_preferences_id'),
+ 'member', ['preferences_id'],
+ unique=False)
+ op.create_index(op.f('ix_member_user_id'),
+ 'member', ['user_id'],
+ unique=False)
+ op.create_index(op.f('ix_address_email'),
+ 'address', ['email'],
+ unique=False)
+
+
+def downgrade():
+ op.drop_index(op.f('ix_address_email'), table_name='address')
+ op.drop_index(op.f('ix_member_user_id'), table_name='member')
+ op.drop_index(op.f('ix_member_preferences_id'), table_name='member')
+ op.drop_index(op.f('ix_member_address_id'), table_name='member')
diff --git a/src/mailman/model/address.py b/src/mailman/model/address.py
index e1ff03dd5..4c92f380f 100644
--- a/src/mailman/model/address.py
+++ b/src/mailman/model/address.py
@@ -42,7 +42,7 @@ class Address(Model):
__tablename__ = 'address'
id = Column(Integer, primary_key=True)
- email = Column(Unicode)
+ email = Column(Unicode, index=True)
_original = Column(Unicode)
display_name = Column(Unicode)
_verified_on = Column('verified_on', DateTime)
diff --git a/src/mailman/model/member.py b/src/mailman/model/member.py
index e6e4933f9..5ea21cd83 100644
--- a/src/mailman/model/member.py
+++ b/src/mailman/model/member.py
@@ -57,11 +57,11 @@ class Member(Model):
list_id = Column(Unicode)
moderation_action = Column(Enum(Action))
- address_id = Column(Integer, ForeignKey('address.id'))
+ address_id = Column(Integer, ForeignKey('address.id'), index=True)
_address = relationship('Address')
- preferences_id = Column(Integer, ForeignKey('preferences.id'))
+ preferences_id = Column(Integer, ForeignKey('preferences.id'), index=True)
preferences = relationship('Preferences')
- user_id = Column(Integer, ForeignKey('user.id'))
+ user_id = Column(Integer, ForeignKey('user.id'), index=True)
_user = relationship('User')
def __init__(self, role, list_id, subscriber):