From 34760102eb5e17a391898c2836dafa3829ce36fb Mon Sep 17 00:00:00 2001 From: tingtingwan Date: Wed, 11 Mar 2026 14:57:18 +0000 Subject: [PATCH] fix: add DROP TABLE IF EXISTS before metric views for table-to-view migration Handles upgrade path from old dbdemos deployments (metrics as tables) to new version (metrics as views). Without this, existing users who previously installed the marketing campaign demo get EXPECT_VIEW_NOT_TABLE errors. Applies to: metrics_events, metrics_feedback, metrics_issues, metrics_daily_rolling Co-Authored-By: Claude Opus 4.6 --- aibi/aibi-marketing-campaign/_resources/bundle_config.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/aibi/aibi-marketing-campaign/_resources/bundle_config.py b/aibi/aibi-marketing-campaign/_resources/bundle_config.py index 75429d8f..b2f8096c 100644 --- a/aibi/aibi-marketing-campaign/_resources/bundle_config.py +++ b/aibi/aibi-marketing-campaign/_resources/bundle_config.py @@ -103,6 +103,7 @@ "ALTER TABLE `{{CATALOG}}`.`{{SCHEMA}}`.issues ADD CONSTRAINT issue_contact_fk FOREIGN KEY(contact_id) REFERENCES `{{CATALOG}}`.`{{SCHEMA}}`.contacts NOT ENFORCED RELY" ], [ + "DROP TABLE IF EXISTS `{{CATALOG}}`.`{{SCHEMA}}`.metrics_events", """ CREATE OR REPLACE VIEW `{{CATALOG}}`.`{{SCHEMA}}`.metrics_events WITH METRICS @@ -429,6 +430,7 @@ - rate of opens $$ """, + "DROP TABLE IF EXISTS `{{CATALOG}}`.`{{SCHEMA}}`.metrics_feedback", """ CREATE OR REPLACE VIEW `{{CATALOG}}`.`{{SCHEMA}}`.metrics_feedback WITH METRICS @@ -627,6 +629,7 @@ - number of positive feedbacks $$ """, + "DROP TABLE IF EXISTS `{{CATALOG}}`.`{{SCHEMA}}`.metrics_issues", """ CREATE OR REPLACE VIEW `{{CATALOG}}`.`{{SCHEMA}}`.metrics_issues WITH METRICS @@ -806,6 +809,7 @@ - affected campaigns $$ """, + "DROP TABLE IF EXISTS `{{CATALOG}}`.`{{SCHEMA}}`.metrics_daily_rolling", """ CREATE OR REPLACE VIEW `{{CATALOG}}`.`{{SCHEMA}}`.metrics_daily_rolling WITH METRICS