On Thu, Dec 16, 2010 at 9:43 AM, Michael Menge <michael.me...@zdv.uni-tuebingen.de> wrote: > Quoting Bron Gondwana <br...@fastmail.fm>: > >> On Wed, Dec 15, 2010 at 03:31:00PM +0100, Michael Menge wrote: >>> >>> I would like to see this included in the official cyrus. >>> >>> It would be nice if the space reserved by quota could be >>> taken into account. >> >> Oooh... interesting. Yes, that does make sense. I don't >> know about you, but we over-supply quota by heaps. > > Yes, i think this is common, so the "not reserved" disk > space can get negative. And the code must be able to hanlde > this, and the case where the "not reserved" disk space is 0. > >> We >> have a "balancing task" that watches for servers filling >> up and moves users automagically behind the scenes. >> >> We use sync_move, which I'm planning to write into Cyrus >> for the future as well - where it uses the replication >> engine rather than the evil XFER :) Much saner, and it >> means you can sync everything FIRST and then just >> replicate the diff once you actually shut down the >> mailbox, so the downtime is much shorter. >> > > Very nice >
You are talking about the quota associated to the mailboxes already present on the partition/server, right ? On our platforms we also give more quota to all users than what we could physically store. Sometimes not all users have the same quota limit: either because some subscribed to a specific service, or because some backends are shared between clients. To precisely determine how much space would be left if all users would fill their mailbox, we would need to retrieve the quota usage of all those mailboxes. Unfortunately we still have legacy quota db (that is: one file per mailbox) on most platforms ... and migrating to other db formats is not always possible since some clients are very picky about the actions we do on 'their' platform ;) Considering some backends do host hundreds of thousands of mailboxes, determining the quota usage of all users would be quite time consuming for us :) Thus we currently still rely on many tools to watch backends usage and perform account moving between backends. For the time being we will focus on the code we currently have. But there could be another selection mode that may make sense: if we consider that backends tend to be homogeneous (as far as quota usage is concerned), then comparing the average available space per mailbox on each partition could also fit some needs. Though that would still require to determine the number of mailboxes on the concerned partition. Regards