[Dovecot] v1.1 plans
Justin McAleer
justin at fehuq.com
Wed Apr 18 14:23:42 EEST 2007
Timo Sirainen wrote:
> On Tue, 2007-04-17 at 15:41 -0400, Justin McAleer wrote:
>
>> In my testing of using sql dictionary for quota, it appears pretty
>> buggy. Are you aware of such problems? Either way, would you consider
>> reliable dictionary quota support a target for 1.1?
>>
>
> Actually I think I did it today. The biggest problem with v1.0
> implementation was that expunges could be counted multiple times if
> multiple processes were running.
>
> I ran imaptest for a while with 10 connections and in 3 different tests
> the dict quota always contained correct values, so I thought it was
> probably working.
>
>
I was having problems with it seemingly not making updates at all. It
would do the initial usage calculation when I logged in, but never
updated when I sent a message or expunged anything. In the past (months
ago) I also saw problems when sending a message to multiple
recipients... I believe it would only update the first recipient or
something like that. I was quite astounded by that, since deliver is run
once per user, of course. So I was figuring there may be a problem in
the dictionary proxy. But, let me double-check all of my configs. If 1.0
should be reliable except for the expunge problem, I'll spend some time
today giving it a more thorough examination.
While I'm talking about dictionary quota, do you think it could be
configurable how to identify the users? I'd like to use uid rather than
username/email address, as our users can change their userids. It's not
a huge deal, I can make deleting/updating the quota table row part of
the rename process, but it would be nice and maybe others would benefit
from being able to tweak it.
>> I did find that it
>> seemed to blow maildir++ away in terms of performance. We have a few
>> really large maildirs that basically choke when quota is enabled
>> using
>> maildir++ (200,000+ messages).
>>
>
> Even if filenames had the ,S=size? Another problem is that the quota is
> read, and possibly recalculated, much more often than is really
> necessary.. I haven't fixed that yet in v1.1.
>
>
Yes, even then. Perhaps I made it sound a little worse than it was, but
expunging a single message made the imap process hang for a while. I'm
not sure how long, but definitely long enough that users would
(rightfully) complain. I was expecting just an incremental update to be
made to maildirsize, but it did the same after every single expunge.
I'll do an strace on the process to get a better idea of what exactly is
taking so long, but it's fine with quota set to 0, bad when set to
anything else (enabled).
More information about the dovecot
mailing list