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 (Jira)" <se...@james.apache.org> on 2022/06/07 09:08:00 UTC

[jira] [Created] (JAMES-3774) Migrate to Cassandra driver version 4

Benoit Tellier created JAMES-3774:
-------------------------------------

             Summary: Migrate to Cassandra driver version 4
                 Key: JAMES-3774
                 URL: https://issues.apache.org/jira/browse/JAMES-3774
             Project: James Server
          Issue Type: Improvement
          Components: cassandra
            Reporter: Benoit Tellier
             Fix For: 3.8.0


# Why?

 - Performance
 - Native reactive driver (no longer passing through future abstraction + paging won't block enabling us to relax our scheduling)
 - Better support, fixes
 - Security: some of the driver 3.x dependecies have (minor) CVEs...
 - More configuration flexibility
 - Integration with java.time
 - CqlIdentifier to prevent perf impact of case sensitivity without dirty dricks

Amongst others....

# What ?

 -> Move all Cassandra code to this new driver. his basically demands a rewritte of all the Cassandra storage layer
 -> Testing Session instrumentation code needs to be re-written (provides statement logging, fault/delay injection)
 -> Configuration needs to be reworked

A POC of how this might look like is available here: https://github.com/apache/james-project/pull/599

# Impact 

Users will need to rely on the driver native configuration as those fields are no longer programmatically exposed.

We will provide sane defaults as well as examples on how to achieve this.

# Acceptance criteria

Performance tests showing at least equivalent performances.

# Remaining work

 - Work is ongoing on mailbox/cassandra
 - We will then need to ensure the guice layers works fine
 - And polish a bit more the POC.




--
This message was sent by Atlassian Jira
(v8.20.7#820007)

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