james-server-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tellier Benoit (JIRA)" <server-...@james.apache.org>
Subject [jira] [Created] (JAMES-2098) Improve SetInMailboxes speed
Date Tue, 25 Jul 2017 02:10:00 GMT
Tellier Benoit created JAMES-2098:

             Summary: Improve SetInMailboxes speed
                 Key: JAMES-2098
                 URL: https://issues.apache.org/jira/browse/JAMES-2098
             Project: James Server
          Issue Type: Improvement
            Reporter: Tellier Benoit

I was surprised to realise how SetInMailboxes operation is slow. See the attached screenshots
for rationals. It was generated while sorting 2 weeks of email. Thus, I had an optimisation
round on my free time. I found:

 - That we can avoid a read in StoreMessageIdManager by avoiding calling delete (which comes
at the cost of extra reads).
 - We can avoid updating flags when none specified

The last point implies:
 - Avoiding extra reads before updating flags
 - Avoiding noop updates of search engine
 - This noop updates is, in fact, a replace with current flags, which can compete with parallel
flags updates. Thus, this optimisation also improve concurrent behaviours, by uncoupling SetFlags
and SetInMailboxes

This message was sent by Atlassian JIRA

To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org

View raw message