SQL allow recreating existing user (#2555)

* SQL allow recreating existing user

Taking advantage of https://github.com/FreshRSS/FreshRSS/pull/2554
In a case when FreshRSS data is lost, but database data still intact (in
particular MySQL or PostgreSQL), this patch allows recreating previous
users without error

* Better error retrieval

Especially when error occur during the prepare statement
This commit is contained in:
Alexandre Alapetite
2019-10-06 00:14:19 +02:00
committed by GitHub
parent 1b15e22897
commit be4c942cb3
9 changed files with 67 additions and 62 deletions

View File

@@ -57,14 +57,18 @@ CREATE TABLE IF NOT EXISTS `_entry` (
UNIQUE KEY (`id_feed`,`guid`), -- v0.7
INDEX (`is_favorite`), -- v0.7
INDEX (`is_read`), -- v0.7
INDEX `entry_lastSeen_index` (`lastSeen`) -- v1.1.1
-- INDEX `entry_feed_read_index` (`id_feed`,`is_read`) -- v1.7 Located futher down
INDEX `entry_lastSeen_index` (`lastSeen`), -- v1.1.1
INDEX `entry_feed_read_index` (`id_feed`,`is_read`) -- v1.7
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci
ENGINE = INNODB;
INSERT IGNORE INTO `_category` (id, name) VALUES(1, "Uncategorized");
SQL;
const SQL_CREATE_INDEX_ENTRY_1 = <<<'SQL'
CREATE INDEX `entry_feed_read_index` ON `_entry` (`id_feed`,`is_read`); -- v1.7
SQL;
const SQL_CREATE_TABLE_ENTRYTMP = <<<'SQL'
CREATE TABLE IF NOT EXISTS `_entrytmp` ( -- v1.7
`id` BIGINT NOT NULL,
@@ -86,9 +90,6 @@ CREATE TABLE IF NOT EXISTS `_entrytmp` ( -- v1.7
INDEX (`date`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci
ENGINE = INNODB;
-- v1.7 Located here to be auto-added
CREATE INDEX `entry_feed_read_index` ON `_entry`(`id_feed`,`is_read`);
SQL;
const SQL_CREATE_TABLE_TAGS = <<<'SQL'