Hi Yufei,

Could you provide some more details about how exactly a 3rd party JDBC
driver is incorporated into Polaris? I might have missed that in the PR,
but it was not apparent to me at first reading.

Thanks,
Dmitri.

On Mon, Jul 6, 2026 at 6:22 PM Yufei Gu <[email protected]> wrote:

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

Reply via email to