From 08c1ba09e86a0285abfb8cc18d77db9056a6c7a0 Mon Sep 17 00:00:00 2001 From: Hanno Cornelius <68783915+jm-clius@users.noreply.github.com> Date: Tue, 7 Dec 2021 13:06:59 +0100 Subject: [PATCH] Fix empty scripts condition. Logging. (#795) --- .../message/00002_addSenderTimeStamp.up.sql | 4 +++- waku/v2/node/storage/sqlite.nim | 4 ++++ waku/v2/node/waku_setup.nim | 4 ++-- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/waku/v2/node/storage/migration/migrations_scripts/message/00002_addSenderTimeStamp.up.sql b/waku/v2/node/storage/migration/migrations_scripts/message/00002_addSenderTimeStamp.up.sql index b3597aeec..ce263d143 100644 --- a/waku/v2/node/storage/migration/migrations_scripts/message/00002_addSenderTimeStamp.up.sql +++ b/waku/v2/node/storage/migration/migrations_scripts/message/00002_addSenderTimeStamp.up.sql @@ -22,6 +22,8 @@ CREATE TABLE IF NOT EXISTS Message( ) WITHOUT ROWID; -INSERT INTO Message SELECT id, timestamp, contentTopic, pubsubTopic, payload, version, 0 FROM Message_backup; +INSERT INTO Message (id, receiverTimestamp, contentTopic, pubsubTopic, payload, version, senderTimestamp) + SELECT id, timestamp, contentTopic, pubsubTopic, payload, version, 0 + FROM Message_backup; DROP TABLE Message_backup; \ No newline at end of file diff --git a/waku/v2/node/storage/sqlite.nim b/waku/v2/node/storage/sqlite.nim index f8a1f78e3..fbb1b52a6 100644 --- a/waku/v2/node/storage/sqlite.nim +++ b/waku/v2/node/storage/sqlite.nim @@ -247,6 +247,7 @@ proc migrate*(db: SqliteDatabase, path: string, targetVersion: int64 = migration ok(true) else: + info "database user_version outdated. migrating.", userVersion=userVersion, targetVersion=targetVersion # TODO check for the down migrations i.e., userVersion.value > tragetVersion # fetch migration scripts let migrationScriptsRes = getScripts(path) @@ -260,6 +261,9 @@ proc migrate*(db: SqliteDatabase, path: string, targetVersion: int64 = migration return err("failed to filter migration scripts") let scripts = scriptsRes.value + if (scripts.len == 0): + return err("no suitable migration scripts") + debug "scripts to be run", scripts=scripts diff --git a/waku/v2/node/waku_setup.nim b/waku/v2/node/waku_setup.nim index 8afe35821..e512231b6 100644 --- a/waku/v2/node/waku_setup.nim +++ b/waku/v2/node/waku_setup.nim @@ -107,9 +107,9 @@ proc runMigrations*(sqliteDatabase: SqliteDatabase, conf: WakuNodeConf) = migrationPath = migration_types.MESSAGE_STORE_MIGRATION_PATH # run migration - info "running migration ... " + info "running migration ...", migrationPath=migrationPath let migrationResult = sqliteDatabase.migrate(migrationPath) if migrationResult.isErr: - warn "migration failed" + warn "migration failed", error=migrationResult.error else: info "migration is done"