Skip to content

Commit 447394d

Browse files
committed
Compute table_mapping in plan evaluator
1 parent cd72235 commit 447394d

File tree

2 files changed

+16
-2
lines changed

2 files changed

+16
-2
lines changed

sqlmesh/core/plan/evaluator.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -344,6 +344,7 @@ def visit_virtual_layer_update_stage(
344344
stage.demoted_environment_naming_info,
345345
deployability_index=stage.deployability_index,
346346
on_complete=lambda s: self.console.update_promotion_progress(s, False),
347+
snapshots=stage.all_snapshots,
347348
)
348349

349350
completed = True
@@ -385,12 +386,19 @@ def _demote_snapshots(
385386
self,
386387
target_snapshots: t.Iterable[Snapshot],
387388
environment_naming_info: EnvironmentNamingInfo,
389+
snapshots: t.Dict[SnapshotId, Snapshot],
388390
deployability_index: t.Optional[DeployabilityIndex] = None,
389391
on_complete: t.Optional[t.Callable[[SnapshotInfoLike], None]] = None,
390392
) -> None:
391393
self.snapshot_evaluator.demote(
392394
target_snapshots,
393395
environment_naming_info,
396+
table_mapping=to_view_mapping(
397+
snapshots.values(),
398+
environment_naming_info,
399+
default_catalog=self.default_catalog,
400+
dialect=self.snapshot_evaluator.adapter.dialect,
401+
),
394402
deployability_index=deployability_index,
395403
on_complete=on_complete,
396404
)

sqlmesh/core/snapshot/evaluator.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -278,7 +278,7 @@ def demote(
278278
self,
279279
target_snapshots: t.Iterable[Snapshot],
280280
environment_naming_info: EnvironmentNamingInfo,
281-
snapshots: t.Optional[t.Dict[SnapshotId, Snapshot]] = None,
281+
table_mapping: t.Optional[t.Dict[str, str]] = None,
282282
deployability_index: t.Optional[DeployabilityIndex] = None,
283283
on_complete: t.Optional[t.Callable[[SnapshotInfoLike], None]] = None,
284284
) -> None:
@@ -293,7 +293,11 @@ def demote(
293293
concurrent_apply_to_snapshots(
294294
target_snapshots,
295295
lambda s: self._demote_snapshot(
296-
s, environment_naming_info, deployability_index, on_complete
296+
s,
297+
environment_naming_info,
298+
deployability_index=deployability_index,
299+
on_complete=on_complete,
300+
table_mapping=table_mapping,
297301
),
298302
self.ddl_concurrent_tasks,
299303
)
@@ -1022,6 +1026,7 @@ def _demote_snapshot(
10221026
environment_naming_info: EnvironmentNamingInfo,
10231027
deployability_index: t.Optional[DeployabilityIndex],
10241028
on_complete: t.Optional[t.Callable[[SnapshotInfoLike], None]],
1029+
table_mapping: t.Optional[t.Dict[str, str]] = None,
10251030
) -> None:
10261031
if not snapshot.is_model:
10271032
return
@@ -1040,6 +1045,7 @@ def _demote_snapshot(
10401045
snapshot.model.render_session_properties(
10411046
engine_adapter=adapter,
10421047
deployability_index=deployability_index,
1048+
table_mapping=table_mapping,
10431049
runtime_stage=RuntimeStage.DEMOTING,
10441050
)
10451051
),

0 commit comments

Comments
 (0)