Highlights
- We've updated
ClickHouseDriverandClickHouseDataSourceto default to using the new (jdbc-v2) implementation of the JDBC driver. Settingclickhouse.jdbc.v1=truewill revert this change.
JDBC Changes
jdbc-v2- Removed support for Transaction Support. Early versions of the driver only simulated transaction support, which could have unexpected results.jdbc-v2- Removed support for Response Column Renaming.ResultSetwas mutable - for efficiency sake they're now read-onlyjdbc-v2- Removed support for Multi-Statement SQL. Multi-statement support was only simulated, now it strictly follows 1:1jdbc-v2- Removed support for Named Parameters. Not part of the JDBC specjdbc-v2- Removed support for Stream-basedPreparedStatement. Early version of the driver allowed for non-jdbc usage ofPreparedStatement- if you desire such options, we recommend looking at client-v2.
New Features
- [client-v2, jdbc-v2] - Added support for Bearer token authentication like JWT. Now it is possible to specify encoded token while
creating a client and change while runtime usingcom.clickhouse.client.api.Client.updateBearerToken. (#1834, #1988) - [client-v2] - Exposed connection pool metrics through Micrometer. It allows to monitor internal connection pool for number of active and leased connections. (#1901)
Bug Fixes
- [client-v2] - Fixed construction of
User-Agentheader. Prev. implementation usesclass.getPackage().getImplementationVersion()what returns
incorrect title and version when library is shaded. New implementation uses build time information from resource files generated while build. (#2007) - [client-v2] - Fixed multiple issues with handling connectivity disruption. Socket timeout is unlimited by default. Added retry on timeout. Added more information to exception message.
Please read the issue for more details. (#1994) - [client-v2] - Client doesn't close provided executor anymore letting application close it instead. (#1956)
- [client-v2] - Removed unnecessary initialization to make startup time shorter. (#2032)