ClickHouse / ClickHouse/dbt-clickhouse
Raise an exception/warning when `repopulate_from_mvs_on_full_refresh` and `catchup` are set
- Dominant language
- Python
- Stars
- 362
- Forks
- 177
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 8
Description
### Description
Our documentation states that
> Materialized views may be configured with `catchup=False` or the target table may be configured with `repopulate_from_mvs_on_full_refresh=False`, so no backfill is executed when the materialized views are created or when the target table is recreated. This is the expected behavior, so if you want to reinsert the data using the materialized views SQL, make sure to set `catchup=True` in the materialized view (this is the default value) or `repopulate_from_mvs_on_full_refresh=True` in the target table. Make sure you are not activating both at the same time to avoid duplicates. Check the [configuration section](#explicit-target-configuration) for more details.
We might want to explore adding a check and raising an exception or a warning if these two settings are set.
see https://github.com/ClickHouse/clickhouse-docs/pull/5534#discussion_r2816030958 for referance
Contributor guide
Research direction
Start by locating the configuration handling for `repopulate_from_mvs_on_full_refresh` and `catchup`, then review the linked documentation discussion for the intended warning-versus-exception behavior. Done means the incompatible combination is detected with an agreed diagnostic, without changing the documented behavior for either setting alone.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, sql
- Domain
- databases
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100