From 72d07af0986d926af8bcd9b5435e0fa0f008db12 Mon Sep 17 00:00:00 2001 From: Kali Kaneko Date: Fri, 27 Dec 2013 02:06:44 -0400 Subject: First stage of the storage schema rewrite. * Separates between flags, docs, body and attachment docs. * Implement IMessageCopier interface: move and have fun! This little change is known to push forward our beloved architect emotional rollercoster. * Message deduplication. * It also fixes a hidden bug that was rendering the multipart mime interface useless (yes, the "True" parameter in the parsestr method). * Does not handle well nested attachs, includes dirty workaround that flattens them. * Includes chiiph's patch for rc2: * return deferred from addMessage * convert StringIO types to string * remove unneeded yields from the chain of deferreds in fetcher --- mail/changes/feature_split_message_docs | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 mail/changes/feature_split_message_docs (limited to 'mail/changes') diff --git a/mail/changes/feature_split_message_docs b/mail/changes/feature_split_message_docs new file mode 100644 index 00000000..231c36ec --- /dev/null +++ b/mail/changes/feature_split_message_docs @@ -0,0 +1,6 @@ + o Defer costly operations to a pool of threads. + o Split the internal representation of messages into four distinct documents: + 1) Flags 2) Headers 3) Body 4) Attachments. + o Add deduplication ability to the save operation, for body and attachments. + o Add IMessageCopier interface to mailbox implementation, so bulk moves + are costless. Closes: #4654 -- cgit v1.2.3