Skip to content

Commit dd40beb

Browse files
prevent circular imports
Signed-off-by: varun-edachali-dbx <varun.edachali@databricks.com>
1 parent 293e356 commit dd40beb

File tree

2 files changed

+10
-9
lines changed

2 files changed

+10
-9
lines changed

src/databricks/sql/backend/sea/backend.py

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import logging
22
import time
33
import re
4-
from typing import Any, Dict, Tuple, List, Optional, Union, TYPE_CHECKING, Set
4+
from typing import Any, Dict, Tuple, List, Optional, Union, TYPE_CHECKING, Set, cast
55

66
from databricks.sql.backend.sea.models.base import ResultManifest
77
from databricks.sql.backend.sea.utils.constants import (
@@ -12,7 +12,6 @@
1212
WaitTimeout,
1313
MetadataCommands,
1414
)
15-
from databricks.sql.result_set import SeaResultSet
1615

1716
if TYPE_CHECKING:
1817
from databricks.sql.client import Cursor
@@ -723,13 +722,12 @@ def get_tables(
723722
enforce_embedded_schema_correctness=False,
724723
)
725724
assert result is not None, "execute_command returned None in synchronous mode"
726-
assert isinstance(
727-
result, SeaResultSet
728-
), "SEA backend execute_command returned a non-SeaResultSet"
729725

730726
# Apply client-side filtering by table_types
731727
from databricks.sql.backend.sea.utils.filters import ResultSetFilter
728+
from databricks.sql.result_set import SeaResultSet
732729

730+
result = cast(SeaResultSet, result)
733731
result = ResultSetFilter.filter_tables_by_type(result, table_types)
734732

735733
return result

src/databricks/sql/backend/sea/utils/filters.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,22 @@
44
This module provides filtering capabilities for result sets returned by different backends.
55
"""
66

7+
from __future__ import annotations
8+
79
import logging
810
from typing import (
911
List,
1012
Optional,
1113
Any,
1214
Callable,
1315
cast,
16+
TYPE_CHECKING,
1417
)
1518

16-
from databricks.sql.backend.sea.backend import SeaDatabricksClient
17-
from databricks.sql.backend.types import ExecuteResponse
19+
if TYPE_CHECKING:
20+
from databricks.sql.result_set import SeaResultSet
1821

19-
from databricks.sql.result_set import ResultSet, SeaResultSet
22+
from databricks.sql.backend.types import ExecuteResponse
2023

2124
logger = logging.getLogger(__name__)
2225

@@ -62,11 +65,11 @@ def _filter_sea_result_set(
6265
)
6366

6467
# Create a new ResultData object with filtered data
65-
6668
from databricks.sql.backend.sea.models.base import ResultData
6769

6870
result_data = ResultData(data=filtered_rows, external_links=None)
6971

72+
from databricks.sql.backend.sea.backend import SeaDatabricksClient
7073
from databricks.sql.result_set import SeaResultSet
7174

7275
# Create a new SeaResultSet with the filtered data

0 commit comments

Comments
 (0)