diff options
author | Kali Kaneko <kali@leap.se> | 2014-02-17 13:59:06 -0400 |
---|---|---|
committer | Kali Kaneko <kali@leap.se> | 2014-02-17 20:42:24 -0400 |
commit | 99ec94f08fb2d062eb2c350b64971ea9ad8d87dd (patch) | |
tree | 06735d42bafa5765072e50610de716b84715c4d2 /src/leap/mail/imap/messages.py | |
parent | 0f2f53c8819133e36780e521fecbfadda331255a (diff) |
avoid unneeded db index updates and rdoc creation
Diffstat (limited to 'src/leap/mail/imap/messages.py')
-rw-r--r-- | src/leap/mail/imap/messages.py | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/leap/mail/imap/messages.py b/src/leap/mail/imap/messages.py index fc1ec55..9bd64fc 100644 --- a/src/leap/mail/imap/messages.py +++ b/src/leap/mail/imap/messages.py @@ -686,6 +686,8 @@ class MessageCollection(WithMsgFields, IndexedDB, MailParser, MBoxParser): _rdoc_lock = threading.Lock() _rdoc_property_lock = threading.Lock() + _initialized = {} + def __init__(self, mbox=None, soledad=None, memstore=None): """ Constructor for MessageCollection. @@ -725,10 +727,12 @@ class MessageCollection(WithMsgFields, IndexedDB, MailParser, MBoxParser): self.memstore = memstore self.__rflags = None - self.initialize_db() - # ensure that we have a recent-flags and a hdocs-sec doc - self._get_or_create_rdoc() + if not self._initialized.get(mbox, False): + self.initialize_db() + # ensure that we have a recent-flags and a hdocs-sec doc + self._get_or_create_rdoc() + self._initialized[mbox] = True from twisted.internet import reactor self.reactor = reactor |