Hi all, I put together a small POC(https://github.com/apache/polaris/pull/4984) for the relational JDBC backend so Polaris can create its own JDBC datasource from config, instead of always relying on the Quarkus datasource.
The config looks like this: polaris.persistence.relational.jdbc.jdbc-url=jdbc:postgresql://... polaris.persistence.relational.jdbc.driver=org.postgresql.Driver polaris.persistence.relational.jdbc.username=... polaris.persistence.relational.jdbc.password=... If jdbc-url is set, Polaris creates and owns the Hikari datasource. If it is not set, we keep using the existing Quarkus datasource path. I also added tests showing that: - We can create datasources dynamically from config - Different configurations can create independent datasources, which could help future per-realm datasource support - A JDBC driver can be supplied at runtime from a jar instead of being on the build-time classpath. This is very helpful for proprietary and Apache license-incompatible drivers, like MySQL. This POC does not yet implement full per-realm datasource routing. It only demonstrates the lower-level building blocks: Polaris can create managed JDBC pools from config, multiple pools can be created independently, and the JDBC driver can be supplied at runtime. Feedback is welcome before I turn this into a formal PR. Thanks, Yufei
