A Clojure wrapper for HikariCP, providing a production-ready JDBC connection pool with zero-overhead performance.
hikari-cp is a Clojure library that provides a wrapper for HikariCP, a high-performance JDBC connection pool implementation. It solves the problem of efficiently managing database connections in Clojure applications by offering production-ready connection pooling with minimal overhead.
Clojure developers building database-backed applications who need reliable, high-performance connection management for production environments.
Developers choose hikari-cp because it provides idiomatic Clojure access to HikariCP's battle-tested connection pooling, with comprehensive configuration options, multiple database adapter support, and validation to prevent common configuration errors.
A Clojure wrapper to HikariCP JDBC connection pool
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Leverages HikariCP's 'zero-overhead' connection pooling, ensuring minimal performance impact in production, as highlighted in the GitHub description.
Supports all HikariCP options, including timeouts, pool sizing, and validation settings, with a detailed table in the README explaining each parameter.
Includes built-in adapters for PostgreSQL, MySQL, Oracle, SQL Server, H2, and others, with tested support for key databases as listed in the adapters table.
Validates configuration options and driver classes at startup, throwing IllegalArgumentException for invalid args to prevent runtime issues, as shown in the Notice section.
Several adapters like derby, firebird, and db2 are marked as not tested in the README, which could lead to unexpected compatibility issues in production for those databases.
Version 4.x requires Java 11 or newer, with older versions tied to specific Java and Clojure releases, making adoption challenging in legacy environments.
With numerous options and the need to correctly distinguish between driver and DataSource classes, setup can be error-prone, as evidenced by the troubleshooting section on driver validation errors.