diff options
author | Maxim Yurchuk <maxim-yurchuk@ydb.tech> | 2024-11-20 17:37:57 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-20 17:37:57 +0000 |
commit | f76323e9b295c15751e51e3443aa47a36bee8023 (patch) | |
tree | 4113c8cad473a33e0f746966e0cf087252fa1d7a /contrib/python/clickhouse-connect/clickhouse_connect/driver | |
parent | 753ecb8d410a4cb459c26f3a0082fb2d1724fe63 (diff) | |
parent | a7b9a6afea2a9d7a7bfac4c5eb4c1a8e60adb9e6 (diff) | |
download | ydb-f76323e9b295c15751e51e3443aa47a36bee8023.tar.gz |
Merge pull request #11788 from ydb-platform/mergelibs-241120-1113
Library import 241120-1113
Diffstat (limited to 'contrib/python/clickhouse-connect/clickhouse_connect/driver')
3 files changed, 10 insertions, 9 deletions
diff --git a/contrib/python/clickhouse-connect/clickhouse_connect/driver/httpclient.py b/contrib/python/clickhouse-connect/clickhouse_connect/driver/httpclient.py index 33d6b9364c..a0e74e9643 100644 --- a/contrib/python/clickhouse-connect/clickhouse_connect/driver/httpclient.py +++ b/contrib/python/clickhouse-connect/clickhouse_connect/driver/httpclient.py @@ -482,7 +482,7 @@ class HttpClient(Client): See BaseClient doc_string for this method """ body, params, fields = self._prep_raw_query(query, parameters, settings, fmt, use_database, external_data) - return self._raw_request(body, params, fields=fields, stream=True) + return self._raw_request(body, params, fields=fields, stream=True, server_wait=False) def _prep_raw_query(self, query: str, parameters: Optional[Union[Sequence, Dict[str, Any]]], diff --git a/contrib/python/clickhouse-connect/clickhouse_connect/driver/httputil.py b/contrib/python/clickhouse-connect/clickhouse_connect/driver/httputil.py index 558d66f614..deb68ce05c 100644 --- a/contrib/python/clickhouse-connect/clickhouse_connect/driver/httputil.py +++ b/contrib/python/clickhouse-connect/clickhouse_connect/driver/httputil.py @@ -225,7 +225,7 @@ class ResponseSource: chunks = deque() done = False current_size = 0 - read_gen = response.read_chunked(chunk_size, decompress is None) + read_gen = response.stream(chunk_size, decompress is None) while True: while not done: chunk = next(read_gen, None) # Always try to read at least one chunk if there are any left diff --git a/contrib/python/clickhouse-connect/clickhouse_connect/driver/transform.py b/contrib/python/clickhouse-connect/clickhouse_connect/driver/transform.py index 1d20d9c6e7..34ec1b7f4d 100644 --- a/contrib/python/clickhouse-connect/clickhouse_connect/driver/transform.py +++ b/contrib/python/clickhouse-connect/clickhouse_connect/driver/transform.py @@ -54,13 +54,14 @@ class NativeTransform: if isinstance(ex, StreamCompleteException): # We ran out of data before it was expected, this could be ClickHouse reporting an error # in the response - message = source.last_message - if len(message) > 1024: - message = message[-1024:] - error_start = message.find('Code: ') - if error_start != -1: - message = message[error_start:] - raise StreamFailureError(message) from None + if source.last_message: + message = source.last_message + if len(message) > 1024: + message = message[-1024:] + error_start = message.find('Code: ') + if error_start != -1: + message = message[error_start:] + raise StreamFailureError(message) from None raise block_num += 1 return result_block |