[dovecot/core] 34f259: lib-storage: Clarify what MAIL_LOOKUP_ABORT_READ_M...

GitHub noreply at github.com
Sun Feb 19 19:00:11 UTC 2017


  Branch: refs/heads/master
  Home:   https://github.com/dovecot/core
  Commit: 34f2590f3b5cd7c8a30379e9688cd3270e402099
      https://github.com/dovecot/core/commit/34f2590f3b5cd7c8a30379e9688cd3270e402099
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-19 (Sun, 19 Feb 2017)

  Changed paths:
    M src/lib-storage/mail-storage.h

  Log Message:
  -----------
  lib-storage: Clarify what MAIL_LOOKUP_ABORT_READ_MAIL means.

It should maybe even be renamed to something clearer.


  Commit: 7204b8112e005ff81dcf628f7880ef1feed1effe
      https://github.com/dovecot/core/commit/7204b8112e005ff81dcf628f7880ef1feed1effe
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-19 (Sun, 19 Feb 2017)

  Changed paths:
    M src/lib-storage/index/cydir/cydir-mail.c
    M src/lib-storage/index/dbox-multi/mdbox-mail.c
    M src/lib-storage/index/dbox-single/sdbox-mail.c
    M src/lib-storage/index/imapc/imapc-mail-fetch.c
    M src/lib-storage/index/index-mail.c
    M src/lib-storage/index/maildir/maildir-mail.c
    M src/lib-storage/index/mbox/mbox-mail.c
    M src/lib-storage/index/raw/raw-mail.c
    M src/lib-storage/mail-storage.h

  Log Message:
  -----------
  lib-storage: Add mail.mail_stream_opened and .mail_metadata_accessed

These allow determining after mail_*() calls how efficiently they were
performed.


  Commit: ca004511f36c090b07c6f097cf237ce836d8faf6
      https://github.com/dovecot/core/commit/ca004511f36c090b07c6f097cf237ce836d8faf6
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-19 (Sun, 19 Feb 2017)

  Changed paths:
    M src/lib-storage/index/index-mailbox-size.c

  Log Message:
  -----------
  lib-storage: Change vsize calculation to use the new mail_stream_opened

This avoids calling mail_get_virtual_size() twice and is a bit cleaner
approach.


  Commit: 6cf18519f0804755385871d84384834465b2d68e
      https://github.com/dovecot/core/commit/6cf18519f0804755385871d84384834465b2d68e
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-19 (Sun, 19 Feb 2017)

  Changed paths:
    M src/lib-storage/index/index-search.c
    M src/lib-storage/index/index-sort-private.h
    M src/lib-storage/index/index-sort-string.c
    M src/lib-storage/index/index-sort.c
    M src/lib-storage/index/index-sort.h

  Log Message:
  -----------
  lib-storage: Fix error handling when sorting mails.

All errors were treated the same as if message had been expunged. This
caused potentially wrong results to be sent to the client without any
indication that they're wrong.


  Commit: 7f93dd01f630d40ff81de471a437968f3dcfea87
      https://github.com/dovecot/core/commit/7f93dd01f630d40ff81de471a437968f3dcfea87
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-19 (Sun, 19 Feb 2017)

  Changed paths:
    M src/lib-storage/index/index-search.c

  Log Message:
  -----------
  lib-storage: Search optimization - avoid parsing message_parts unnecessarily

If they're not already cached, the mail is parsed twice: once to get the
message_parts and again to perform the actual search. The searching can
however do the message_parts parsing internally as well.


  Commit: 0796f4c0eebbc9a0eaf441c53053e3023543418e
      https://github.com/dovecot/core/commit/0796f4c0eebbc9a0eaf441c53053e3023543418e
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-19 (Sun, 19 Feb 2017)

  Changed paths:
    M src/lib-storage/index/index-search.c

  Log Message:
  -----------
  lib-storage: Fix error handling when searching mails

Only expunge errors and failures caused by lookup_abort should be ignored.
The rest of the mail errors mean that the search result might not be
correct. We'll still run the search as fully as possible, but we just
return an error at the end.


  Commit: be6bde0e1f40db97871b657603188fc9041f1d04
      https://github.com/dovecot/core/commit/be6bde0e1f40db97871b657603188fc9041f1d04
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-19 (Sun, 19 Feb 2017)

  Changed paths:
    M src/imap/imap-search.c

  Log Message:
  -----------
  imap: If SEARCH/SORT fails but returns some results, send them to client.

The previous error handling fixes cause SEARCH/SORT to now fail if there
are any problems reading mails. This change makes the commands still
return the best known results, so the IMAP client can still use them,
even though they may not be entirely correct.


  Commit: 2898ad0028a9b0c30df96dd6b68930fd4dc57527
      https://github.com/dovecot/core/commit/2898ad0028a9b0c30df96dd6b68930fd4dc57527
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-19 (Sun, 19 Feb 2017)

  Changed paths:
    M src/doveadm/doveadm-mail.c
    M src/imap/imap-commands-util.c
    M src/lib-storage/index/dbox-multi/mdbox-map.c
    M src/lib-storage/index/imapc/imapc-storage.c
    M src/lib-storage/mail-error.h

  Log Message:
  -----------
  lib-storage: Add MAIL_ERROR_LIMIT


  Commit: a85cf0bdd86ba36e6f1243e9b6848a335625185b
      https://github.com/dovecot/core/commit/a85cf0bdd86ba36e6f1243e9b6848a335625185b
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-19 (Sun, 19 Feb 2017)

  Changed paths:
    M src/lib-storage/index/index-sort-private.h
    M src/lib-storage/index/index-sort-string.c
    M src/lib-storage/index/index-sort.c
    M src/lib-storage/mail-storage-settings.c
    M src/lib-storage/mail-storage-settings.h

  Log Message:
  -----------
  lib-storage: Add mail_sort_max_read_count setting.

This controls how many slow mail accesses sorting can perform before it
fails:

a NO [LIMIT] Requested sort would have taken too long

The SORT reply is still returned, but it's likely not correct.


  Commit: dfaf420c473c810fee33f515d08b888826dd57bd
      https://github.com/dovecot/core/commit/dfaf420c473c810fee33f515d08b888826dd57bd
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-19 (Sun, 19 Feb 2017)

  Changed paths:
    M src/lib-storage/index/index-search.c
    M src/lib-storage/index/index-sort.c
    M src/lib-storage/mail-storage.h

  Log Message:
  -----------
  lib-storage: Add mail.access_type


  Commit: a0cd302bcb827678f9c9c2ca1d0a3f0d3c0b3563
      https://github.com/dovecot/core/commit/a0cd302bcb827678f9c9c2ca1d0a3f0d3c0b3563
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-02-19 (Sun, 19 Feb 2017)

  Changed paths:
    M src/doveadm/doveadm-mail.c
    M src/imap/imap-commands-util.c
    M src/lib-storage/index/index-mailbox-size.c
    M src/lib-storage/index/index-search.c
    M src/lib-storage/index/index-sort.c
    M src/lib-storage/mail-error.h
    M src/lib-storage/mail.c
    M src/pop3/pop3-client.c

  Log Message:
  -----------
  lib-storage: Add explicit MAIL_ERROR_LOOKUP_ABORT error

The MAIL_ERROR_NOTPOSSIBLE was a bit too generic to assume to mean the same
thing. It doesn't look like there are any external plugins that break
because of this change.


Compare: https://github.com/dovecot/core/compare/2da176a0b105...a0cd302bcb82


More information about the dovecot-cvs mailing list