Barry Warsaw pushed to branch master at mailman / Mailman
Commits: 9708493d by Aurélien Bompard at 2015-11-21T12:42:08Z Add useful indexes on the member table - - - - - 3 changed files: - + src/mailman/database/alembic/versions/33bc0099223_add_member_indexes.py - src/mailman/model/address.py - src/mailman/model/member.py Changes: ===================================== src/mailman/database/alembic/versions/33bc0099223_add_member_indexes.py ===================================== --- /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') ===================================== src/mailman/model/address.py ===================================== --- 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) ===================================== src/mailman/model/member.py ===================================== --- 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): View it on GitLab: https://gitlab.com/mailman/mailman/commit/9708493d1ad982895f4250c491a04a4f575310cf
_______________________________________________ Mailman-checkins mailing list Mailman-checkins@python.org Unsubscribe: https://mail.python.org/mailman/options/mailman-checkins/archive%40jab.org