Maintaining table quota2
Aki Tuomi
aki.tuomi at open-xchange.com
Tue Feb 12 20:03:09 EET 2019
> On 12 February 2019 at 19:55 Robert Moskowitz via dovecot <dovecot at dovecot.org> wrote:
>
>
>
>
> On 2/12/19 12:38 PM, Aki Tuomi via dovecot wrote:
> >> On 12 February 2019 at 18:23 Robert Moskowitz via dovecot <dovecot at dovecot.org> wrote:
> >>
> >>
> >> Does dovecot compute that values for quota2 with each email it updates
> >> for the user? Or only an incremental change?
> >>
> >> I ask because I am looking at migrating all the user mail from the old
> >> server to the new and building a new sql database. All I see is:
> >>
> >> dovecot-dict-sql.conf.ext: connect = host=/var/lib/mysql/mysql.sock
> >> dbname=postfix user=postfix password=$Postfix_Database_Password map {
> >> pattern = priv/quota/storage table = quota2 username_field = username
> >> value_field = bytes } map { pattern = priv/quota/messages table = quota2
> >> username_field = username value_field = messages }
> >>
> >>
> >> what is actually done with this table?
> >>
> >> thanks
> >>
> >>
> >>
> >>
> >>
> > dict-sql converts the mappings into SQL statements.
>
> But does dovecot check out the current bytes used and # of messages and
> resets quota2, or only uses this latest operation (add message, delete
> message...) to adjust quota2?
>
> If the later how to reset quota2 to the current reality?
>
> thanks
>
Dovecot keeps the quota current, although dict quota has been known to be bit bad at this.
We nowadays recommend using count quota instead and use quota_clone to copy the quota state to database. It is more accurate.
Aki
More information about the dovecot
mailing list