cagg_migrate()

Migrate a continuous aggregate from the old format to the new format introduced in TimescaleDB 2.7.

  1. CALL cagg_migrate (
  2. cagg REGCLASS,
  3. override BOOLEAN DEFAULT FALSE,
  4. drop_old BOOLEAN DEFAULT FALSE
  5. );

TimescaleDB 2.7 introduced a new format for continuous aggregates that improves performance. It also makes continuous aggregates compatible with more types of SQL queries.

The new format, also called the finalized format, stores the continuous aggregate data exactly as it appears in the final view. The old format, also called the partial format, stores the data in a partially aggregated state.

Use this procedure to migrate continuous aggregates from the old format to the new format.

For more information, see the migration how-to guide.

warning

There are known issues with cagg_migrate() in version 2.8.0. Upgrade to version 2.8.1 or above before using it.

Required arguments

NameTypeDescription
caggREGCLASSThe continuous aggregate to migrate

Optional arguments

NameTypeDescription
overrideBOOLEANIf false, the old continuous aggregate keeps its name. The new continuous aggregate is named <OLD_CONTINUOUS_AGGREGATE_NAME>_new. If true, the new continuous aggregate gets the old name. The old continuous aggregate is renamed <OLD_CONTINUOUS_AGGREGATE_NAME>_old. Defaults to false.
drop_oldBOOLEANIf true, the old continuous aggregate is deleted. Must be used together with override. Defaults to false.