diff --git a/dbt-tests-adapter/dbt/tests/adapter/incremental/test_incremental_microbatch.py b/dbt-tests-adapter/dbt/tests/adapter/incremental/test_incremental_microbatch.py index 5bbabbe1..f3a3177b 100644 --- a/dbt-tests-adapter/dbt/tests/adapter/incremental/test_incremental_microbatch.py +++ b/dbt-tests-adapter/dbt/tests/adapter/incremental/test_incremental_microbatch.py @@ -63,7 +63,14 @@ def assert_row_count(self, project, relation_name: str, expected_row_count: int) assert len(result) == expected_row_count, f"{relation_name}:{pformat(result)}" - @mock.patch.dict(os.environ, {"DBT_EXPERIMENTAL_MICROBATCH": "True"}) + @pytest.fixture(scope="class") + def project_config_update(self): + return { + "flags": { + "require_builtin_microbatch_strategy": True, + } + } + def test_run_with_event_time(self, project, insert_two_rows_sql): # initial run -- backfills all data with patch_microbatch_end_time("2020-01-03 13:57:00"): diff --git a/dbt/adapters/base/impl.py b/dbt/adapters/base/impl.py index f3788fe3..964c173f 100644 --- a/dbt/adapters/base/impl.py +++ b/dbt/adapters/base/impl.py @@ -312,7 +312,7 @@ def _behavior_flags(self) -> List[BehaviorFlag]: """ This method should be overwritten by adapter maintainers to provide platform-specific flags """ - return [] + return [{"name": "require_builtin_microbatch_strategy", "default": False}] ### # Methods that pass through to the connection manager @@ -1570,7 +1570,7 @@ def valid_incremental_strategies(self): def builtin_incremental_strategies(self): builtin_strategies = ["append", "delete+insert", "merge", "insert_overwrite"] - if os.environ.get("DBT_EXPERIMENTAL_MICROBATCH"): + if self.behavior.require_builtin_microbatch_strategy: builtin_strategies.append("microbatch") return builtin_strategies