|
66 | 66 | SnapshotIdBatch, |
67 | 67 | SnapshotInfoLike, |
68 | 68 | SnapshotTableCleanupTask, |
| 69 | + SnapshotChangeCategory, |
69 | 70 | ) |
70 | 71 | from sqlmesh.core.snapshot.execution_tracker import QueryExecutionTracker |
71 | 72 | from sqlmesh.utils import random_id, CorrelationId, AttributeDict |
@@ -2760,20 +2761,27 @@ def migrate( |
2760 | 2761 | **kwargs: t.Any, |
2761 | 2762 | ) -> None: |
2762 | 2763 | logger.info("Migrating view '%s'", target_table_name) |
2763 | | - model = snapshot.model |
2764 | | - render_kwargs = dict( |
2765 | | - execution_time=now(), snapshots=kwargs["snapshots"], engine_adapter=self.adapter |
2766 | | - ) |
| 2764 | + if ( |
| 2765 | + snapshot.is_forward_only |
| 2766 | + or bool(snapshot.model.physical_version) |
| 2767 | + or not snapshot.virtual_environment_mode.is_full |
| 2768 | + or snapshot.change_category == SnapshotChangeCategory.INDIRECT_NON_BREAKING |
| 2769 | + or not self.adapter.COMMENT_CREATION_VIEW.is_unsupported |
| 2770 | + ): |
| 2771 | + model = snapshot.model |
| 2772 | + render_kwargs = dict( |
| 2773 | + execution_time=now(), snapshots=kwargs["snapshots"], engine_adapter=self.adapter |
| 2774 | + ) |
2767 | 2775 |
|
2768 | | - self.adapter.create_view( |
2769 | | - target_table_name, |
2770 | | - model.render_query_or_raise(**render_kwargs), |
2771 | | - model.columns_to_types, |
2772 | | - materialized=self._is_materialized_view(model), |
2773 | | - view_properties=model.render_physical_properties(**render_kwargs), |
2774 | | - table_description=model.description, |
2775 | | - column_descriptions=model.column_descriptions, |
2776 | | - ) |
| 2776 | + self.adapter.create_view( |
| 2777 | + target_table_name, |
| 2778 | + model.render_query_or_raise(**render_kwargs), |
| 2779 | + model.columns_to_types, |
| 2780 | + materialized=self._is_materialized_view(model), |
| 2781 | + view_properties=model.render_physical_properties(**render_kwargs), |
| 2782 | + table_description=model.description, |
| 2783 | + column_descriptions=model.column_descriptions, |
| 2784 | + ) |
2777 | 2785 |
|
2778 | 2786 | # Apply grants after view migration |
2779 | 2787 | deployability_index = kwargs.get("deployability_index") |
|
0 commit comments