|
46 | 46 | previously set in milliseconds but mistakenly retrieved and used in seconds in some places. Now it correctly uses |
47 | 47 | milliseconds consistently. (https://github.com/ClickHouse/clickhouse-java/issues/2358) |
48 | 48 |
|
49 | | -- **[client-v2]** HTTP `503 Service Unavailable` responses are now surfaced as a connection-style failure (`java.net.ConnectException`) and are retried by default. Previously a `503` was treated as a server error (`ServerException`) and fell under the `ServerRetryable` fault cause. It has been moved to the `ConnectTimeout` fault cause category so that connectivity/availability failures are handled uniformly with other connection errors. Callers that specifically excluded `ServerRetryable` to avoid retrying `503` should now adjust their `client_retry_on_failures` configuration to exclude `ConnectTimeout` instead. |
| 49 | +- **[client-v2]** HTTP `503 Service Unavailable` responses are now surfaced as a connection-style failure ( |
| 50 | + `java.net.ConnectException`) and are retried by default. Previously a `503` was treated as a server error ( |
| 51 | + `ServerException`) and fell under the `ServerRetryable` fault cause. It has been moved to the `ConnectTimeout` fault |
| 52 | + cause category so that connectivity/availability failures are handled uniformly with other connection errors. Callers |
| 53 | + that specifically excluded `ServerRetryable` to avoid retrying `503` should now adjust their |
| 54 | + `client_retry_on_failures` configuration to exclude `ConnectTimeout` instead. |
50 | 55 |
|
51 | | -- **[client-v2]** Unexpected/unknown HTTP status codes (those the client cannot interpret as a ClickHouse response) now throw a `ClientException` instead of a `ServerException`. Since the client cannot meaningfully handle these responses, they are reported as a client-side error rather than being attributed to the server. |
| 56 | +- **[client-v2]** Unexpected/unknown HTTP status codes (those the client cannot interpret as a ClickHouse response) now |
| 57 | + throw a `ClientException` instead of a `ServerException`. Since the client cannot meaningfully handle these responses, |
| 58 | + they are reported as a client-side error rather than being attributed to the server. |
52 | 59 |
|
53 | 60 | ### New Features |
54 | 61 |
|
|
105 | 112 | supported but will be removed. Please migrate to the new property. |
106 | 113 | (https://github.com/ClickHouse/clickhouse-java/issues/2858) |
107 | 114 |
|
108 | | -- **[client-v2]** Added `Client#cancelTransportRequest(String queryId)` to cancel an in-flight request that has not yet received a response from the server, identified by the query id supplied in the operation settings. This aborts the request on the client side (cancels the underlying IO operation) but does **not** issue a `KILL QUERY` on the server, so a query that already started executing may continue to run server-side. It is recommended to use operation timeout settings where possible; this API is intended for explicitly aborting a request from the client. |
| 115 | +- **[client-v2]** Added `Client#cancelTransportRequest(String queryId)` to cancel an in-flight request that has not yet |
| 116 | + received a response from the server, identified by the query id supplied in the operation settings. This aborts the |
| 117 | + request on the client side (cancels the underlying IO operation) but does **not** issue a `KILL QUERY` on the server, |
| 118 | + so a query that already started executing may continue to run server-side. It is recommended to use operation timeout |
| 119 | + settings where possible; this API is intended for explicitly aborting a request from the client. |
109 | 120 |
|
110 | 121 | ### Improvements |
111 | 122 |
|
|
0 commit comments