[dovecot/core] 9ae8da: lib-index: Add mail_cache_close_mail() to smartly ...

GitHub noreply at github.com
Mon Aug 21 12:30:12 EEST 2017


  Branch: refs/heads/master-2.2
  Home:   https://github.com/dovecot/core
  Commit: 9ae8da0b6a8a663d02224c765b1e7259a51d318e
      https://github.com/dovecot/core/commit/9ae8da0b6a8a663d02224c765b1e7259a51d318e
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-08-21 (Mon, 21 Aug 2017)

  Changed paths:
    M src/lib-index/mail-cache-transaction.c
    M src/lib-index/mail-cache.h

  Log Message:
  -----------
  lib-index: Add mail_cache_close_mail() to smartly drop cached data with INDEX=MEMORY

Instead of reseting the entire transaction buffer when 256 kB is reached,
just drop mails have have been marked closed with mail_cache_close_mail().
If that's not enough, continue deleting forcibly until the buffer is below
256 kB.

This is especially important when mail_prefetch_count>0 and INDEX=MEMORY.
In that case there can be multiple mails that are being added to cache
and used later on. If they were dropped from cache too early, the work
would have to be done all over again.


  Commit: b67fe203a8b634629b0f8b40abd29f8d30b8b19c
      https://github.com/dovecot/core/commit/b67fe203a8b634629b0f8b40abd29f8d30b8b19c
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2017-08-21 (Mon, 21 Aug 2017)

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

  Log Message:
  -----------
  lib-storage: Call mail_cache_close_mail() when mail is closed

Fixes caching problems with INDEX=MEMORY


  Commit: 3a67e54a4998ce3ca125808bf5b956104c725887
      https://github.com/dovecot/core/commit/3a67e54a4998ce3ca125808bf5b956104c725887
  Author: Aki Tuomi <aki.tuomi at dovecot.fi>
  Date:   2017-08-21 (Mon, 21 Aug 2017)

  Changed paths:
    M configure.ac
    A m4/want_apparmor.m4
    M src/plugins/Makefile.am
    A src/plugins/apparmor/Makefile.am
    A src/plugins/apparmor/apparmor-plugin.c

  Log Message:
  -----------
  apparmor: Add apparmor plugin

It lets dovecot temporarily switch to a new apparmor
context for a user.


Compare: https://github.com/dovecot/core/compare/b048e2dab771...3a67e54a4998


More information about the dovecot-cvs mailing list