You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-user@james.apache.org by Robert Munn <ro...@gmail.com> on 2015/11/04 17:17:35 UTC
Re: Quota feature on trunk.
Benoit,
This is very good news, thank you for your contribution.
I just checked out the trunk @ rev 1712396, but it did not build successfully from CLI. Do you have a known good revision in the trunk to get a successful build with this feature enabled?
This rev is failing when it tries to build the filesystem API.
Robert
> On Oct 29, 2015, at 10:49 AM, Benoit Tellier <be...@minet.net> wrote:
>
> Hi every one,
>
> A month ago, I contributed some code to James to handle quotas :
>
> - At the mailbox level : it means user mailboxes can not exceed the size in bytes and message count you fixed for it.
> - At the SMTP level : If you send a mail to a full mailbox, you have a matcher to answer something like "Hey, your sending this mail to an over quota mailbox"
> - At the IMAP level : A user can perform IMAP commands in order to check his quotas
> - At the administration level : you can administrate quotas threw JMX using the cli tool.
> - At the configuration level : you can choose the implementation you want.
>
> I didn't mentioned it earlier on this list so, it is time to do it !
>
> Just note that if you deploy the trunk you will need a new configuration file : quota.xml. Sample configuration can be found there : james-project/server/app/src/main/resources/quota-template.xml . I mention it as I answered and question on this today...
>
> Here follows a short note on configurations :
>
> - There is a distinction between current values and maximum allowed values. This means you can use different backends for both. Eg : (not implemented but allowed by this distinction) LDAP for max values and the current values persisted elsewhere.
> - You may, with a few configuration work, use your own QuotaRoot resolver, and group mailbox for applying quotas using your own policies. eg : not anymore by people, but by work unit.
>
> The interesting part is on current value calculation :
>
> - You can lazy compute it and store it in RAM.
> - Or you can update it and maintain the count in a DB. For now only Cassandra is available.
>
> We might want a tool to recalculate quotas...
>
> The advantage from the previous system (mailets) is that it is fast : there is at most one quota calculation, depending on the choices you made, the the result can be retrieved either from the data base or from the RAM.
>
> Benoit
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
> For additional commands, e-mail: server-user-help@james.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
For additional commands, e-mail: server-user-help@james.apache.org
Re: Quota feature on trunk.
Posted by Robert Munn <ro...@gmail.com>.
OK. I managed a successful build like so:
$ svn checkout http://svn.apache.org/repos/asf/james/project/trunk/ <http://svn.apache.org/repos/asf/james/project/trunk/>
$ cd trunk
$ mvn clean install -DskipTests=true
I took a look at the quota template and may have some questions once I get a chance to experiment with it.
Thanks,
Robert
> On Nov 4, 2015, at 9:39 AM, Benoit Tellier <be...@minet.net> wrote:
>
> Hi,
>
> Great ! I'm glad you want to give it a try !
>
> Mhh, build process changed a little last mount, you will not success to build it from james-server.
>
> You need to checkout james-project, last revision should be OK as long as you don't launch unit tests ( see JAMES-1636 ).
>
> Don't know for SVN, but using this git repository : https://github.com/apache/james-project
> I build succesfuly latest commits.
>
> Benoit
>
> Le 04/11/2015 17:17, Robert Munn a écrit :
>> Benoit,
>>
>> This is very good news, thank you for your contribution.
>>
>> I just checked out the trunk @ rev 1712396, but it did not build successfully from CLI. Do you have a known good revision in the trunk to get a successful build with this feature enabled?
>>
>> This rev is failing when it tries to build the filesystem API.
>>
>> Robert
>>
>>
>>> On Oct 29, 2015, at 10:49 AM, Benoit Tellier <be...@minet.net> wrote:
>>>
>>> Hi every one,
>>>
>>> A month ago, I contributed some code to James to handle quotas :
>>>
>>> - At the mailbox level : it means user mailboxes can not exceed the size in bytes and message count you fixed for it.
>>> - At the SMTP level : If you send a mail to a full mailbox, you have a matcher to answer something like "Hey, your sending this mail to an over quota mailbox"
>>> - At the IMAP level : A user can perform IMAP commands in order to check his quotas
>>> - At the administration level : you can administrate quotas threw JMX using the cli tool.
>>> - At the configuration level : you can choose the implementation you want.
>>>
>>> I didn't mentioned it earlier on this list so, it is time to do it !
>>>
>>> Just note that if you deploy the trunk you will need a new configuration file : quota.xml. Sample configuration can be found there : james-project/server/app/src/main/resources/quota-template.xml . I mention it as I answered and question on this today...
>>>
>>> Here follows a short note on configurations :
>>>
>>> - There is a distinction between current values and maximum allowed values. This means you can use different backends for both. Eg : (not implemented but allowed by this distinction) LDAP for max values and the current values persisted elsewhere.
>>> - You may, with a few configuration work, use your own QuotaRoot resolver, and group mailbox for applying quotas using your own policies. eg : not anymore by people, but by work unit.
>>>
>>> The interesting part is on current value calculation :
>>>
>>> - You can lazy compute it and store it in RAM.
>>> - Or you can update it and maintain the count in a DB. For now only Cassandra is available.
>>>
>>> We might want a tool to recalculate quotas...
>>>
>>> The advantage from the previous system (mailets) is that it is fast : there is at most one quota calculation, depending on the choices you made, the the result can be retrieved either from the data base or from the RAM.
>>>
>>> Benoit
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
>>> For additional commands, e-mail: server-user-help@james.apache.org
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
>> For additional commands, e-mail: server-user-help@james.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
> For additional commands, e-mail: server-user-help@james.apache.org
>
Re: Quota feature on trunk.
Posted by Benoit Tellier <be...@minet.net>.
Hi,
Great ! I'm glad you want to give it a try !
Mhh, build process changed a little last mount, you will not success to
build it from james-server.
You need to checkout james-project, last revision should be OK as long
as you don't launch unit tests ( see JAMES-1636 ).
Don't know for SVN, but using this git repository :
https://github.com/apache/james-project
I build succesfuly latest commits.
Benoit
Le 04/11/2015 17:17, Robert Munn a écrit :
> Benoit,
>
> This is very good news, thank you for your contribution.
>
> I just checked out the trunk @ rev 1712396, but it did not build successfully from CLI. Do you have a known good revision in the trunk to get a successful build with this feature enabled?
>
> This rev is failing when it tries to build the filesystem API.
>
> Robert
>
>
>> On Oct 29, 2015, at 10:49 AM, Benoit Tellier <be...@minet.net> wrote:
>>
>> Hi every one,
>>
>> A month ago, I contributed some code to James to handle quotas :
>>
>> - At the mailbox level : it means user mailboxes can not exceed the size in bytes and message count you fixed for it.
>> - At the SMTP level : If you send a mail to a full mailbox, you have a matcher to answer something like "Hey, your sending this mail to an over quota mailbox"
>> - At the IMAP level : A user can perform IMAP commands in order to check his quotas
>> - At the administration level : you can administrate quotas threw JMX using the cli tool.
>> - At the configuration level : you can choose the implementation you want.
>>
>> I didn't mentioned it earlier on this list so, it is time to do it !
>>
>> Just note that if you deploy the trunk you will need a new configuration file : quota.xml. Sample configuration can be found there : james-project/server/app/src/main/resources/quota-template.xml . I mention it as I answered and question on this today...
>>
>> Here follows a short note on configurations :
>>
>> - There is a distinction between current values and maximum allowed values. This means you can use different backends for both. Eg : (not implemented but allowed by this distinction) LDAP for max values and the current values persisted elsewhere.
>> - You may, with a few configuration work, use your own QuotaRoot resolver, and group mailbox for applying quotas using your own policies. eg : not anymore by people, but by work unit.
>>
>> The interesting part is on current value calculation :
>>
>> - You can lazy compute it and store it in RAM.
>> - Or you can update it and maintain the count in a DB. For now only Cassandra is available.
>>
>> We might want a tool to recalculate quotas...
>>
>> The advantage from the previous system (mailets) is that it is fast : there is at most one quota calculation, depending on the choices you made, the the result can be retrieved either from the data base or from the RAM.
>>
>> Benoit
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
>> For additional commands, e-mail: server-user-help@james.apache.org
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
> For additional commands, e-mail: server-user-help@james.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
For additional commands, e-mail: server-user-help@james.apache.org