Skip to content

Commit ae9862f

Browse files
pass CommandId to ExecResp
Signed-off-by: varun-edachali-dbx <varun.edachali@databricks.com>
1 parent 71feef9 commit ae9862f

File tree

2 files changed

+11
-6
lines changed

2 files changed

+11
-6
lines changed

src/databricks/sql/backend/thrift_backend.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -352,6 +352,7 @@ def make_request(self, method, request, retryable=True):
352352
Will stop retry attempts if total elapsed time + next retry delay would exceed
353353
_retry_stop_after_attempts_duration.
354354
"""
355+
355356
# basic strategy: build range iterator rep'ing number of available
356357
# retries. bounds can be computed from there. iterate over it with
357358
# retries until success or final failure achieved.
@@ -866,9 +867,13 @@ def get_execution_result(
866867
ssl_options=self._ssl_options,
867868
)
868869

870+
status = CommandState.from_thrift_state(resp.status)
871+
if status is None:
872+
raise ValueError(f"Invalid operation state: {resp.status}")
873+
869874
execute_response = ExecuteResponse(
870875
command_id=command_id,
871-
status=resp.status,
876+
status=status,
872877
description=description,
873878
has_more_rows=has_more_rows,
874879
results_queue=queue,

src/databricks/sql/result_set.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -207,7 +207,7 @@ def _fill_results_buffer(self):
207207
use_cloud_fetch=self._use_cloud_fetch,
208208
)
209209
self.results = results
210-
self._has_more_rows = has_more_rows
210+
self.has_more_rows = has_more_rows
211211

212212
def _convert_columnar_table(self, table):
213213
column_names = [c[0] for c in self.description]
@@ -291,7 +291,7 @@ def fetchmany_arrow(self, size: int) -> "pyarrow.Table":
291291
while (
292292
n_remaining_rows > 0
293293
and not self.has_been_closed_server_side
294-
and self._has_more_rows
294+
and self.has_more_rows
295295
):
296296
self._fill_results_buffer()
297297
partial_results = self.results.next_n_rows(n_remaining_rows)
@@ -316,7 +316,7 @@ def fetchmany_columnar(self, size: int):
316316
while (
317317
n_remaining_rows > 0
318318
and not self.has_been_closed_server_side
319-
and self._has_more_rows
319+
and self.has_more_rows
320320
):
321321
self._fill_results_buffer()
322322
partial_results = self.results.next_n_rows(n_remaining_rows)
@@ -331,7 +331,7 @@ def fetchall_arrow(self) -> "pyarrow.Table":
331331
results = self.results.remaining_rows()
332332
self._next_row_index += results.num_rows
333333

334-
while not self.has_been_closed_server_side and self._has_more_rows:
334+
while not self.has_been_closed_server_side and self.has_more_rows:
335335
self._fill_results_buffer()
336336
partial_results = self.results.remaining_rows()
337337
if isinstance(results, ColumnTable) and isinstance(
@@ -357,7 +357,7 @@ def fetchall_columnar(self):
357357
results = self.results.remaining_rows()
358358
self._next_row_index += results.num_rows
359359

360-
while not self.has_been_closed_server_side and self._has_more_rows:
360+
while not self.has_been_closed_server_side and self.has_more_rows:
361361
self._fill_results_buffer()
362362
partial_results = self.results.remaining_rows()
363363
results = self.merge_columnar(results, partial_results)

0 commit comments

Comments
 (0)