--- description: TimescaleDB continuous aggregates – komentáře a Flyway (EMS) globs: db/**/*.sql alwaysApply: false --- # Timescale continuous aggregate v EMS ## Komentáře u CA (kritické) Continuous aggregate vytvořený jako `CREATE MATERIALIZED VIEW … WITH (timescaledb.continuous)` **není** v systémovém katalogu PostgreSQL evidovaný jako běžný **materialized view**. - **Nepoužívat** `COMMENT ON MATERIALIZED VIEW ems. …` → chyba SQL state **42809** („is not a materialized view“). - **Použít** `COMMENT ON VIEW ems. …` — stejný vzor jako u `telemetry_inverter_hourly` v migraci **V011**. Samotné **wrapper view** nad CA (např. `vw_telemetry_15m_7d` v repeatable `R__071_vw_telemetry_15m_7d.sql`) komentovat standardně `COMMENT ON VIEW`. ## Struktura repa - **Definice CA + `add_continuous_aggregate_policy`**: verzovaná migrace `db/migration/V0xx__*.sql` (po aplikaci na DB neměnit — nová V migrace). - **Definice čtecího view nad CA**: raději **repeatable** `db/views/R__NNN_vw_*.sql` (číselný prefix kvůli pořadí Flyway), aby šla měnit jedna aktuální verze bez nové V migrace. - **PostgREST**: `GRANT SELECT` na view v `db/views/R__072_z_postgrest_ems_anon_grants.sql`, ne na samotný CA. ## Odkaz v dokumentaci Detailněji: `docs/04-modules/telemetry.md` (sekce o continuous aggregates a dashboardu).