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

Benoit Tellier commented on JAMES-3492:
---------------------------------------

Hello there, 
I do love this contribution effort however I do have to maintain several James 
deployments relying on ElasticSearch (version 6) that - sadly - I can not 
migrate quickly.

As such, I consider backporting ES6 support in a third party repository not to 
delay in any way this ElasticSearch V7 migration work, and without altering my 
ability to deploy new releases.

However current project structure do not allow me today to do that, as 
ElasticSearch guice modules are mixed with Cassandra guice modules and do pull 
the ES7 dependency in all downstream maven modules - clashing with the ES6 
dependency I plan to use on my backports.

A simple solution to this is to better split our maven modules:

 - Have a dedicated maven module for Cassandra guice modules
 - Have a dedicated maven module for ElasticSearch guice modules - that I gonna 
overide in my backport
 - Preserve the cassandra-guice module assembling the server - but with no 
modules
 - Have a dedicated maven module for the distributed modules (event-bus, 
mailqueue, task manager, blobstore module chooser)

Basically the directory structure I propose would look like:

{code:java}
server/container/guice/cassandra  # Guice modules for Cassandra
server/container/guice/elasticsearch  # Guice modules for ElasticSearch
server/container/guice/distributed  # Guice modules reusing RabbitMQ
{code}

This, could of course, be an opportunity to go finer grained in the maven 
podule split, enabling smarter app assembling. I don't need it - hence I do not 
propose to further cut things. However if some people (cc [~matthieu] ) wants 
to refine this proposal, we might be able to implement it.

Best regards,

Benoit Tellier


> Elasticsearch 6->7 upgrade for guice version
> --------------------------------------------
>
>                 Key: JAMES-3492
>                 URL: https://issues.apache.org/jira/browse/JAMES-3492
>             Project: James Server
>          Issue Type: Improvement
>            Reporter: Juhan Aasaru
>            Priority: Major
>
> Guice versions use Elasticsearch 6 that has reached end of life.
> We are thinking about starting to work on this issue but first we need to 
> estimate the effort required. If anyone has any input on this please add a 
> comment. Thanks!



--
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