[ 
https://issues.apache.org/jira/browse/JAMES-3067?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17038222#comment-17038222
 ] 

Gautier DI FOLCO commented on JAMES-3067:
-----------------------------------------

Regarding the solutions, they have major drawbacks:

 
 * "Have a parameterized number of recursions, doing multiple queries on the 
current scheme"

The number of queries can easily explode, overloading Cassandra

 
 * "Have a specific projection maintaining all the connected aliases"

Numerous concurrency issues: if you have the following scheme:
{code:java}
alias2 -> alias1 -> alias0 -> user{code}
The projection might look like
{code:java}
(user, [alias0, alias1, alias2]){code}
Dropping *alias0* will not result in dropping it from the projection, you will 
also drop *alias1* and *alias2*.

It will requires a strong coherency.

If we want to go in this direction, we will have to implement it with event 
sourcing.

> Allowed From headers recursion
> ------------------------------
>
>                 Key: JAMES-3067
>                 URL: https://issues.apache.org/jira/browse/JAMES-3067
>             Project: James Server
>          Issue Type: Improvement
>          Components: JMAP, SMTPServer
>    Affects Versions: 3.5.0
>            Reporter: Gautier DI FOLCO
>            Assignee: Antoine Duprat
>            Priority: Minor
>
> In order to go further than the JAMES-3032 we need to go a recursion-level 
> further.
> They are two propositions now:
>  * Have a parameterized number of recursions, doing multiple queries on the 
> current scheme
>  * Have a specific projection maintaining all the connected aliases
> We should discuss it



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to