Skip to content

Commit 4d2b74e

Browse files
speed up execution by moving row_diff in concurrent method
1 parent 4fe1d28 commit 4d2b74e

2 files changed

Lines changed: 12 additions & 2 deletions

File tree

sqlmesh/core/console.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2139,7 +2139,6 @@ def show_row_diff(
21392139
self.console.print(f"\n[b][green]{target_name} ONLY[/green] sample rows:[/b]")
21402140
self.console.print(row_diff.t_sample.to_string(index=False), end="\n\n")
21412141

2142-
21432142
def show_table_diff(
21442143
self,
21452144
table_diffs: t.List[TableDiff],

sqlmesh/core/context.py

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1644,6 +1644,9 @@ def table_diff(
16441644
on=on,
16451645
skip_columns=skip_columns,
16461646
where=where,
1647+
show=show,
1648+
temp_schema=temp_schema,
1649+
skip_grain_check=skip_grain_check,
16471650
),
16481651
tasks_num=tasks_num,
16491652
)
@@ -1678,6 +1681,9 @@ def _model_diff(
16781681
on: t.Optional[t.List[str] | exp.Condition] = None,
16791682
skip_columns: t.Optional[t.List[str]] = None,
16801683
where: t.Optional[str | exp.Condition] = None,
1684+
show: bool = True,
1685+
temp_schema: t.Optional[str] = None,
1686+
skip_grain_check: bool = False,
16811687
) -> TableDiff:
16821688
model = self.get_model(model_or_snapshot, raise_if_missing=True)
16831689
adapter = self._get_engine_adapter(model.gateway)
@@ -1704,7 +1710,7 @@ def _model_diff(
17041710
# Handle a single Column or Paren expression
17051711
on.append(expr.this.sql(dialect=adapter.dialect))
17061712

1707-
return self._table_diff(
1713+
table_diff = self._table_diff(
17081714
on=on,
17091715
skip_columns=skip_columns,
17101716
where=where,
@@ -1717,6 +1723,11 @@ def _model_diff(
17171723
source_alias=source_alias,
17181724
target_alias=target_alias,
17191725
)
1726+
# Trigger row_diff in parallel execution so it's available for ordered display later
1727+
if show:
1728+
table_diff.row_diff(temp_schema=temp_schema, skip_grain_check=skip_grain_check)
1729+
1730+
return table_diff
17201731

17211732
def _table_diff(
17221733
self,

0 commit comments

Comments
 (0)