From 85fcd4469703c2f234ed1a8554264f5d10151dcf Mon Sep 17 00:00:00 2001 From: Aurélien Bompard Date: Wed, 2 Dec 2015 11:49:19 +0100 Subject: Add indexes on the Pendable fields that can be queried upon. - Pendable.token: queried in the add() and confirm() methods - Pendable.expiration_date: queried on evict() - PendableKeyValue.key and PendableKeyValue.value: queried in the find() method --- src/mailman/model/pending.py | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) (limited to 'src/mailman/model/pending.py') diff --git a/src/mailman/model/pending.py b/src/mailman/model/pending.py index 54188c39f..c99ac8ee1 100644 --- a/src/mailman/model/pending.py +++ b/src/mailman/model/pending.py @@ -49,14 +49,10 @@ class PendedKeyValue(Model): __tablename__ = 'pendedkeyvalue' id = Column(Integer, primary_key=True) - key = Column(Unicode) - value = Column(Unicode) + key = Column(Unicode, index=True) + value = Column(Unicode, index=True) pended_id = Column(Integer, ForeignKey('pended.id'), index=True) - def __init__(self, key, value): - self.key = key - self.value = value - @implementer(IPended) @@ -66,15 +62,10 @@ class Pended(Model): __tablename__ = 'pended' id = Column(Integer, primary_key=True) - token = Column(Unicode) - expiration_date = Column(DateTime) + token = Column(Unicode, index=True) + expiration_date = Column(DateTime, index=True) key_values = relationship('PendedKeyValue', cascade="all, delete-orphan") - def __init__(self, token, expiration_date): - super(Pended, self).__init__() - self.token = token - self.expiration_date = expiration_date - @implementer(IPendable) -- cgit v1.2.3-70-g09d2