You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by Benoit Tellier <be...@minet.net> on 2014/12/17 19:40:17 UTC

[PATCH] Improve Cassandra Mailbox implementation

Hi,

I implemented several improvments for the Cassandra mailbox.

It includes :

 - A CassandraGroupMembershipResolver : a distributed Group Membership
resolver using Cassandra as a backend.

 - ACL support :
   - I overloaded the simplemailbox to store and retrie acl in cassandra
   - I stock those ACL in cassandra in JSon format, so there is an ACL
to JSOn converter using Jackson.

  - A distributed quota management system based on Cassandra. It have
the same architecture than what is done in the store for quota
management, including :
     - A CassandraPerUserQuotaManager : fix quota policies by user
     - A CassandraFixedQuotaManager : fix global quota policies
     - These are based on a CassandraListeningQuotaManager, so thats its
updated for all received e-mail.
     - All these classes uses a CassandraQuotaStorage class to work with
Cassandra, so that storage operations are centralised in a class.



You will find these improvments in the attached patch.

Sincerly yours,

Benoit Tellier

Re: [PATCH] Improve Cassandra Mailbox implementation

Posted by Eric Charles <er...@apache.org>.
Can you attach the patch on a jira for review ? (if not yet done)

On 12/17/2014 07:40 PM, Benoit Tellier wrote:
> Hi,
>
> I implemented several improvments for the Cassandra mailbox.
>
> It includes :
>
>  - A CassandraGroupMembershipResolver : a distributed Group Membership
> resolver using Cassandra as a backend.
>
>  - ACL support :
>    - I overloaded the simplemailbox to store and retrie acl in cassandra
>    - I stock those ACL in cassandra in JSon format, so there is an ACL
> to JSOn converter using Jackson.
>
>   - A distributed quota management system based on Cassandra. It have
> the same architecture than what is done in the store for quota
> management, including :
>      - A CassandraPerUserQuotaManager : fix quota policies by user
>      - A CassandraFixedQuotaManager : fix global quota policies
>      - These are based on a CassandraListeningQuotaManager, so thats its
> updated for all received e-mail.
>      - All these classes uses a CassandraQuotaStorage class to work with
> Cassandra, so that storage operations are centralised in a class.
>
>
>
> You will find these improvments in the attached patch.
>
> Sincerly yours,
>
> Benoit Tellier

---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org