From d4fdccf261b2104a7ba0f06b1b4b22db518c3cf8 Mon Sep 17 00:00:00 2001 From: jloup Date: Sun, 6 May 2018 21:54:47 +0200 Subject: [PATCH] Fix migrations. --- db/db.go | 9 +++++---- db/migrations.go | 28 ++++++++++++++-------------- 2 files changed, 19 insertions(+), 18 deletions(-) diff --git a/db/db.go b/db/db.go index 63de87c..2adc8c8 100644 --- a/db/db.go +++ b/db/db.go @@ -59,11 +59,12 @@ func migratedb() error { mig := make([]migrate.Migration, 0) - for _, migration := range migrations { + for i := range migrations { + index := i mig = append(mig, migrate.Migration{ - Version: migration.Version, + Version: migrations[index].Version, Up: func(db orm.DB) error { - for _, query := range migration.Up { + for _, query := range migrations[index].Up { _, err := db.Exec(query) if err != nil { return err @@ -73,7 +74,7 @@ func migratedb() error { return nil }, Down: func(db orm.DB) error { - for _, query := range migration.Down { + for _, query := range migrations[index].Down { _, err := db.Exec(query) if err != nil { return err diff --git a/db/migrations.go b/db/migrations.go index 5d753f3..23847c9 100644 --- a/db/migrations.go +++ b/db/migrations.go @@ -26,7 +26,7 @@ var migrations []Migration = []Migration{ config jsonb )`, `CREATE UNIQUE INDEX IF NOT EXISTS market_name_user_id_idx ON public.market_configs (user_id, market_name)`, - `CREATE INDEX IF NOT EXISTS market_configs_user_id ON market_configs (user_id)`, + `CREATE INDEX IF NOT EXISTS market_configs_user_id ON market_configs (user_id)`, `CREATE TABLE reports ( id BIGSERIAL PRIMARY KEY, date timestamp with time zone NOT NULL, @@ -60,21 +60,21 @@ var migrations []Migration = []Migration{ Down: []string{"DROP VIEW view_report_lines_by_user", "DROP TABLE report_lines", "DROP TABLE reports", "DROP TABLE market_configs", "DROP TABLE users"}, }, { - Version: 2, + Version: 201805061000, Up: []string{ `CREATE VIEW "view_balances" AS - SELECT report_lines.id, - reports.id AS report_id, - market_configs.market_name, - market_configs.id AS market_id, - reports.date AS report_date, - report_lines.date, - report_lines.payload - FROM report_lines - JOIN reports ON reports.id = report_lines.report_id - JOIN market_configs ON reports.market_config_id = market_configs.id - WHERE report_lines.payload::jsonb->'checkpoint' IS NOT NULL`, - `CREATE INDEX checkpoints_idx ON report_lines ((payload->>'checkpoint'))`, + SELECT report_lines.id, + reports.id AS report_id, + market_configs.market_name, + market_configs.id AS market_id, + reports.date AS report_date, + report_lines.date, + report_lines.payload + FROM report_lines + JOIN reports ON reports.id = report_lines.report_id + JOIN market_configs ON reports.market_config_id = market_configs.id + WHERE report_lines.payload::jsonb->'checkpoint' IS NOT NULL`, + `CREATE INDEX checkpoints_idx ON report_lines ((payload->>'checkpoint'))`, }, Down: []string{"DROP VIEW view_balances", "DROP INDEX checkpoints_idx"}, }, -- 2.41.0