Skip to content

Commit 5b38dd9

Browse files
committed
Add engine support flags
1 parent c66b001 commit 5b38dd9

4 files changed

Lines changed: 11 additions & 3 deletions

File tree

sqlmesh/core/engine_adapter/athena.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ class AthenaEngineAdapter(PandasNativeFetchDFSupportMixin, RowDiffMixin):
4545
# >>> self._execute('/* test */ DESCRIBE foo')
4646
# pyathena.error.OperationalError: FAILED: ParseException line 1:0 cannot recognize input near '/' '*' 'test'
4747
ATTACH_CORRELATION_ID = False
48+
SUPPORTS_QUERY_EXECUTION_TRACKING = True
4849
SUPPORTED_DROP_CASCADE_OBJECT_KINDS = ["DATABASE", "SCHEMA"]
4950

5051
def __init__(

sqlmesh/core/engine_adapter/base.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -118,8 +118,7 @@ class EngineAdapter:
118118
QUOTE_IDENTIFIERS_IN_VIEWS = True
119119
MAX_IDENTIFIER_LENGTH: t.Optional[int] = None
120120
ATTACH_CORRELATION_ID = True
121-
# TODO: change to False
122-
SUPPORTS_QUERY_EXECUTION_TRACKING = True
121+
SUPPORTS_QUERY_EXECUTION_TRACKING = False
123122

124123
def __init__(
125124
self,

sqlmesh/core/engine_adapter/base_postgres.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ class BasePostgresEngineAdapter(EngineAdapter):
2424
DEFAULT_BATCH_SIZE = 400
2525
COMMENT_CREATION_TABLE = CommentCreationTable.COMMENT_COMMAND_ONLY
2626
COMMENT_CREATION_VIEW = CommentCreationView.COMMENT_COMMAND_ONLY
27+
SUPPORTS_QUERY_EXECUTION_TRACKING = True
2728
SUPPORTED_DROP_CASCADE_OBJECT_KINDS = ["SCHEMA", "TABLE", "VIEW"]
2829

2930
def columns(

sqlmesh/core/engine_adapter/bigquery.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ class BigQueryEngineAdapter(InsertOverwriteWithMergeMixin, ClusteredByMixin, Row
6767
SUPPORTS_CLONING = True
6868
MAX_TABLE_COMMENT_LENGTH = 1024
6969
MAX_COLUMN_COMMENT_LENGTH = 1024
70+
SUPPORTS_QUERY_EXECUTION_TRACKING = True
7071
SUPPORTED_DROP_CASCADE_OBJECT_KINDS = ["SCHEMA"]
7172

7273
SCHEMA_DIFFER_KWARGS = {
@@ -1097,7 +1098,13 @@ def _execute(
10971098
self.cursor._set_description(query_results.schema)
10981099

10991100
if track_row_count:
1100-
track_execution_record(sql, query_results.total_rows)
1101+
if query_job.statement_type == "CREATE_TABLE_AS_SELECT":
1102+
query_table = self.client.get_table(query_job.destination)
1103+
num_rows = query_table.num_rows
1104+
elif query_job.statement_type in ["INSERT", "DELETE", "MERGE", "UPDATE"]:
1105+
num_rows = query_job.num_dml_affected_rows
1106+
1107+
track_execution_record(sql, num_rows)
11011108

11021109
def _get_data_objects(
11031110
self, schema_name: SchemaName, object_names: t.Optional[t.Set[str]] = None

0 commit comments

Comments
 (0)