|
1 | 1 | ## Latest |
2 | 2 |
|
| 3 | +## 0.7.0 |
| 4 | + |
| 5 | +### Deprecations |
| 6 | +- Following deprecated components are removed: |
| 7 | + - clickhouse-cli-client |
| 8 | + - clickhouse-grpc-client |
| 9 | + |
| 10 | +### Important Changes |
| 11 | +- [client-v2] New transport layer implementation is used by default. It is still possible to switch back |
| 12 | +using old implementation by setting `com.clickhouse.client.api.Client.Builder#useNewImplementation` to `false`. (https://github.com/ClickHouse/clickhouse-java/pull/1847) |
| 13 | +- [doc] Main documentation on official ClickHouse website is updated. See https://clickhouse.com/docs/en/integrations/java. |
| 14 | +Each client has its own page with detailed information. Added documentation for client v2. |
| 15 | + |
| 16 | +### New Features |
| 17 | +- [client-v2] Now there is an easy way to set custom header globally for client and per operation. |
| 18 | +See `com.clickhouse.client.api.Client.Builder.httpHeader(java.lang.String, java.lang.String)` for details. (https://github.com/ClickHouse/clickhouse-java/issues/1782) |
| 19 | +- [client-v2] Not there is a way to set any server settings globally for client and per operation. |
| 20 | +See `com.clickhouse.client.api.Client.Builder.serverSetting(java.lang.String, java.lang.String)` for details. (https://github.com/ClickHouse/clickhouse-java/issues/1782) |
| 21 | +- [client-v2] Added support for writing AggregateFunction values (bitmap serialization). !! Reading is not |
| 22 | +supported but will be added in next release. (https://github.com/ClickHouse/clickhouse-java/pull/1814) |
| 23 | +- [r2dbc] Defer connection creation. This allows pool to create a new instance on every subscription, |
| 24 | +instead of always returning the same one. (https://github.com/ClickHouse/clickhouse-java/pull/1810) |
| 25 | + |
| 26 | +### Performance Improvements |
| 27 | +- [client-v2] Improved reading fixed length data like numbers. It is possible to configure readers to |
| 28 | +use pre-allocated buffers to avoid memory allocation for each data row/block. |
| 29 | +See `com.clickhouse.client.api.Client.Builder.allowBinaryReaderToReuseBuffers` for details. (https://github.com/ClickHouse/clickhouse-java/pull/1816) |
| 30 | +- [client-v2] New query method introduced to read data into a POJO. POJO deserializers are compiled into |
| 31 | +bytecode (with help of https://asm.ow2.io/ library) and optimized for each schema. It is great performance boost |
| 32 | +because data is read without additional copies. As serde code is implemented without reflection using JVM bytecode |
| 33 | +then code can be optimized by JVM while runtime. Using ASM allows handle primitive types without boxing. (https://github.com/ClickHouse/clickhouse-java/pull/1794, |
| 34 | +https://github.com/ClickHouse/clickhouse-java/pull/1826) |
| 35 | + |
| 36 | + |
| 37 | +### Bug Fixes |
| 38 | +- [client-v2] Fix for case when missing operation metrics were causing NPE. (https://github.com/ClickHouse/clickhouse-java/pull/1846) |
| 39 | +- [client-v2] Fix for handling empty result by BinaryFormat readers. (https://github.com/ClickHouse/clickhouse-java/pull/1845) |
| 40 | +- [jdbc] Content of an artifact 'clickhouse-jdbc-{version}-all.jar' is fixed and contains all required classes from `clickhouse-client` |
| 41 | +and `clickhouse-data`. (https://github.com/ClickHouse/clickhouse-java/pull/1842) |
| 42 | +- [client-v1, jdbc] Endpoints definition parsing fixed to grub properties correctly. Now even properties with key-value |
| 43 | +pairs are supported. (https://github.com/ClickHouse/clickhouse-java/pull/1841, https://github.com/ClickHouse/clickhouse-java/issues/1665) |
| 44 | + |
3 | 45 | ## 0.6.5 |
4 | 46 |
|
5 | 47 | ### Deprecations |
|
0 commit comments