René Cordier created JAMES-3952:
-----------------------------------
Summary: Implement a Postgresql native reactive implementation in
James
Key: JAMES-3952
URL: https://issues.apache.org/jira/browse/JAMES-3952
Project: James Server
Issue Type: New Feature
Reporter: René Cordier
Postgresql is very popular on the market and also ideal for small and medium
structures to run.
The only implementation of James so far supporting Postgresql is JPA (that
supports a larger panel of dbs). But the JPA implementation has its limits: not
optimized for performance, not reactive, missing support for numerous features,
...
We believe that adding a native reactive implementation of Postgresql with
James is well wanted, and other people in the community seemed to express
similar interests (thread in question here:
[https://lists.apache.org/thread/lo04f7v2pmxkxc2n4wlcgrb90dn8br4t)]
To achieve such an implementation, we think about:
* implement it step by step on a feature branch of James called `postgresql`
* would start from a copy of JPA modules into new pg ones, then would migrate
code step by step from JPA to Postgresql implementation. This means that during
the dev process, both JPA and Postgresql implementation will cohabit, until we
finally get rid of JPA code
* we will start simple, for example, 1 fixed connection to Postgresql per
domain (multi-tenants)
* r2dbc-postgresql client would be used, alongside with JOOQ for higher level
SQL queries (is the licensing an issue though or not?)
* would need as well some benchmarks to prove the gains we get from the
postgresql implem compared to the JPA one
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]