diff options
author | June McEnroe <june@causal.agency> | 2020-05-22 16:41:35 -0400 |
---|---|---|
committer | June McEnroe <june@causal.agency> | 2020-05-22 16:41:35 -0400 |
commit | e2e940b9a898385e00989661ecd371a7984d3e55 (patch) | |
tree | c4a457366eef00b700f2572eac382e41c817823a | |
parent | Clean up unscoop manual page (diff) | |
download | litterbox-1.3.tar.gz litterbox-1.3.zip |
Perform all migrations in one transaction 1.3
-rw-r--r-- | database.h | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/database.h b/database.h index 117d7eb..da8c8da 100644 --- a/database.h +++ b/database.h @@ -323,7 +323,6 @@ static inline void dbInit(void) { static const char *MigrationSQL[] = { // Added columnsize = 0 option. SQL( - BEGIN TRANSACTION; DROP TABLE search; CREATE VIRTUAL TABLE search USING fts5 ( network, channel, query, nick, user, target, message, @@ -336,11 +335,9 @@ static const char *MigrationSQL[] = { rowid, network, channel, query, nick, user, target, message ) SELECT * FROM text; PRAGMA user_version = 1; - COMMIT TRANSACTION; ), SQL( - BEGIN TRANSACTION; CREATE TABLE consumers ( host STRING NOT NULL, port INTEGER NOT NULL, @@ -348,14 +345,15 @@ static const char *MigrationSQL[] = { UNIQUE (host, port) ); PRAGMA user_version = 2; - COMMIT TRANSACTION; ), }; static inline void dbMigrate(void) { + dbExec(SQL(BEGIN TRANSACTION;)); for (int version = dbVersion(); version < DatabaseVersion; ++version) { dbExec(MigrationSQL[version]); } + dbExec(SQL(COMMIT TRANSACTION;)); } static inline void dbBackup(const char *path) { |