Skip to content

Commit 2973dcf

Browse files
committed
Fix: Revert dbt full_refresh handling for incremental by time range models (#5031)
1 parent 431e2fa commit 2973dcf

File tree

2 files changed

+12
-8
lines changed

2 files changed

+12
-8
lines changed

sqlmesh/dbt/model.py

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -257,13 +257,6 @@ def model_kind(self, context: DbtContext) -> ModelKind:
257257
if field_val is not None:
258258
incremental_by_kind_kwargs[field] = field_val
259259

260-
disable_restatement = self.disable_restatement
261-
if disable_restatement is None:
262-
disable_restatement = (
263-
not self.full_refresh if self.full_refresh is not None else False
264-
)
265-
incremental_kind_kwargs["disable_restatement"] = disable_restatement
266-
267260
if self.time_column:
268261
strategy = self.incremental_strategy or target.default_incremental_strategy(
269262
IncrementalByTimeRangeKind
@@ -277,11 +270,20 @@ def model_kind(self, context: DbtContext) -> ModelKind:
277270

278271
return IncrementalByTimeRangeKind(
279272
time_column=self.time_column,
273+
disable_restatement=(
274+
self.disable_restatement if self.disable_restatement is not None else False
275+
),
280276
auto_restatement_intervals=self.auto_restatement_intervals,
281277
**incremental_kind_kwargs,
282278
**incremental_by_kind_kwargs,
283279
)
284280

281+
disable_restatement = self.disable_restatement
282+
if disable_restatement is None:
283+
disable_restatement = (
284+
not self.full_refresh if self.full_refresh is not None else False
285+
)
286+
285287
if self.unique_key:
286288
strategy = self.incremental_strategy or target.default_incremental_strategy(
287289
IncrementalByUniqueKeyKind
@@ -307,6 +309,7 @@ def model_kind(self, context: DbtContext) -> ModelKind:
307309

308310
return IncrementalByUniqueKeyKind(
309311
unique_key=self.unique_key,
312+
disable_restatement=disable_restatement,
310313
**incremental_kind_kwargs,
311314
**incremental_by_kind_kwargs,
312315
)
@@ -316,6 +319,7 @@ def model_kind(self, context: DbtContext) -> ModelKind:
316319
)
317320
return IncrementalUnmanagedKind(
318321
insert_overwrite=strategy in INCREMENTAL_BY_TIME_STRATEGIES,
322+
disable_restatement=disable_restatement,
319323
**incremental_kind_kwargs,
320324
)
321325
if materialization == Materialization.EPHEMERAL:

tests/dbt/test_transformation.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -259,7 +259,7 @@ def test_model_kind():
259259
incremental_strategy="merge",
260260
full_refresh=False,
261261
).model_kind(context) == IncrementalByTimeRangeKind(
262-
time_column="foo", dialect="duckdb", forward_only=True, disable_restatement=True
262+
time_column="foo", dialect="duckdb", forward_only=True, disable_restatement=False
263263
)
264264

265265
assert ModelConfig(

0 commit comments

Comments
 (0)