You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
independently of the client-level default. When enabled, top-level `String` and `FixedString` columns are read
206
+
into a `StringValue` that preserves the raw bytes instead of decoding them into a `String`, allowing non-UTF-8/binary
207
+
content to round-trip byte-for-byte. `StringValue` exposes the bytes via `toByteArray()`/`asByteBuffer()` and
208
+
lazily decodes a `String` via `asString()` (UTF-8 by default, or a caller-supplied `Charset`). Values nested inside
209
+
containers (`Array`, `Map`, `Tuple`, `Nested`, `Variant`) continue to be read as `String`, since those types are not
210
+
expected to carry large/binary strings. On the JDBC side, `ResultSet#getBinaryStream(int)` and
211
+
`ResultSet#getBinaryStream(String)` are now implemented (previously unsupported) and, together with `getBytes(...)`,
212
+
return the raw column bytes.
213
+
195
214
-**[client-v2]** Added `Client#cancelTransportRequest(String queryId)` to cancel an in-flight request that has not yet
196
215
received a response from the server, identified by the query id supplied in the operation settings. This aborts the
197
216
request on the client side (cancels the underlying IO operation) but does **not** issue a `KILL QUERY` on the server,
@@ -214,7 +233,10 @@ like `ch_db_01`. This is mostly used in k8s environment. (https://github.com/Cli
214
233
215
234
-**[repo]** Added a contribution guide. Please review and send us your feedback. (https://github.com/ClickHouse/clickhouse-java/pull/2859)
216
235
217
-
-**[client-v2]** Added endpoint failover support: when multiple endpoints are configured and a request fails with a retryable error (connect timeout, connection refused, HTTP 503, etc.), the client now automatically retries against the next available endpoint instead of always targeting the first one. Failed endpoints are quarantined for 30 seconds before being retried. (https://github.com/ClickHouse/clickhouse-java/issues/2855)
236
+
-**[client-v2]** Added endpoint failover support: when multiple endpoints are configured and a request fails with a
237
+
retryable error (connect timeout, connection refused, HTTP 503, etc.), the client now automatically retries against
238
+
the next available endpoint instead of always targeting the first one. Failed endpoints are quarantined for 30 seconds
239
+
before being retried. (https://github.com/ClickHouse/clickhouse-java/issues/2855)
218
240
219
241
### Bug Fixes
220
242
@@ -241,6 +263,11 @@ of `NULL` was not set and read. (https://github.com/ClickHouse/clickhouse-java/i
241
263
242
264
-**[jdbc-v2, client-v2]** Fixed writing nullable marker for nested `Tuple` and `Map values. (https://github.com/ClickHouse/clickhouse-java/issues/2721)
243
265
266
+
-**[jdbc-v2]** Fixed `ResultSet.getObject` leaking the internal `StringValue` holder for `String`/`FixedString`
267
+
columns when `binary_string_support` is enabled. `getObject(column, byte[].class)` now returns the exact raw bytes,
268
+
and `getObject(column, Object.class)` and the no-type `getObject(column)` overloads now return a decoded `String`
0 commit comments