Search code examples
jdbcc3p0ignite

Apache Ignite JDBC driver - JDBC Connection Pool options


I'm currently trying to set-up Apache Ignite with C3P0 as my JDBC Connection pool, but I noticed that since the Ignite driver doesn't support transactions, C3P0's not usable.

Has anyone had any luck getting a JDBC connection pool going with the Ignite driver? Suggestions?


EDIT:

Updating with exactly why C3P0 doesn't work with Ignite's JDBC Driver

So take a look at this line of code To create a new pooled connection, C3P0 attempts to set transaction isolation through the connection/driver.

That eventually leads us to this line of code in the Ignite driver, which basically tells us that the Ignite driver doesn't support SQL transactions.
Ignite itself DOES support transactions as specified here but it appears the JDBC implementation does not.

So I need an alternative to C3P0 if I want to set up a JDBC connection pool; any suggestions?


Solution

  • It turns out the JDBC driver for Apache Ignite isn't currently JDBC compliant. Specifically the part that breaks it is that it doesn't have transaction support. As a result, your typical JDBC-pool implementation won't work with the Ignite Driver

    There's now a ticket for this here: https://issues.apache.org/jira/browse/IGNITE-4191