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: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org