diff --git a/persist/sqlite/init.go b/persist/sqlite/init.go index b2772e4..44ac3ee 100644 --- a/persist/sqlite/init.go +++ b/persist/sqlite/init.go @@ -68,11 +68,6 @@ func (s *Store) upgradeDatabase(current, target int64) error { func (s *Store) init() error { // calculate the expected final database version target := int64(len(migrations) + 1) - // disable foreign key constraints during migration - if _, err := s.db.Exec("PRAGMA foreign_keys = OFF"); err != nil { - return fmt.Errorf("failed to disable foreign key constraints: %w", err) - } - version := getDBVersion(s.db) switch { case version == 0: diff --git a/persist/sqlite/migrations.go b/persist/sqlite/migrations.go index 33f16db..8472941 100644 --- a/persist/sqlite/migrations.go +++ b/persist/sqlite/migrations.go @@ -10,6 +10,11 @@ import ( "go.uber.org/zap" ) +func migrateVersion25(tx txn, log *zap.Logger) error { + // no-op migration to trigger foreign key checks + return nil +} + // migrateVersion24 combines the rhp2 and rhp3 data metrics func migrateVersion24(tx txn, log *zap.Logger) error { rows, err := tx.Query(`SELECT date_created, stat, stat_value FROM host_stats WHERE stat IN (?, ?, ?, ?) ORDER BY date_created ASC`, metricRHP2Ingress, metricRHP2Egress, metricRHP3Ingress, metricRHP3Egress)