Materialized View POPULATE behavior during version upgrades
0 reputation · 20 May 2020, 22:27 UTC
Context
ClickHouse Materialized Views use the POPULATE keyword to backfill data from a source table into the destination table upon creation. Across different major releases, the default semantics for how POPULATE interacts with the target table and the timing of the initial backfill have evolved.
Constraints
When upgrading a cluster, the decision to rely on automatic backfill versus explicit population affects data completeness. There is uncertainty regarding whether a Materialized View created in an older version maintains its population state or requires re-population if the underlying storage engine or target table definition changes during the upgrade process.
Goal
Establish the expected behavior for data consistency in Materialized Views when transitioning between versions where POPULATE defaults differ.
- Does the server trigger a re-population of existing data if the Materialized View is redefined during a version upgrade?
- How is data completeness verified when moving from a version that defaults to automatic backfill to one that requires explicit population?