diff options
| author | 2023-10-31 02:01:50 +0100 | |
|---|---|---|
| committer | 2023-10-31 02:01:50 +0100 | |
| commit | ad8bae5acadcda0291c3a6ca579303dbd4053f04 (patch) | |
| tree | ab6a7ce2bca239a18e50ff027613bf0116135614 /app/SQL/install.sql.pgsql.php | |
| parent | 4207f2a5b2d84dbbc18ef6b277345e7e723f35c1 (diff) | |
Rework SQL field length (#5788)
* SQL auto-update field length
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/5756
Only for PostgreSQL and MySQL / MariaDB. Not possible for SQLite
* Account for MySQL 65535
Partial revert of https://github.com/FreshRSS/FreshRSS/pull/5756
> The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead.
Diffstat (limited to 'app/SQL/install.sql.pgsql.php')
| -rw-r--r-- | app/SQL/install.sql.pgsql.php | 47 |
1 files changed, 32 insertions, 15 deletions
diff --git a/app/SQL/install.sql.pgsql.php b/app/SQL/install.sql.pgsql.php index e08d0e1ef..038e8e070 100644 --- a/app/SQL/install.sql.pgsql.php +++ b/app/SQL/install.sql.pgsql.php @@ -23,7 +23,7 @@ CREATE TABLE IF NOT EXISTS `_feed` ( "description" TEXT, "lastUpdate" BIGINT DEFAULT 0, "priority" SMALLINT NOT NULL DEFAULT 10, - "pathEntries" VARCHAR(65535) DEFAULT NULL, + "pathEntries" VARCHAR(4096) DEFAULT NULL, "httpAuth" VARCHAR(1024) DEFAULT NULL, "error" SMALLINT DEFAULT 0, "ttl" INT NOT NULL DEFAULT 0, @@ -38,17 +38,17 @@ CREATE INDEX IF NOT EXISTS `_priority_index` ON `_feed` ("priority"); CREATE TABLE IF NOT EXISTS `_entry` ( "id" BIGINT NOT NULL PRIMARY KEY, "guid" VARCHAR(767) NOT NULL, - "title" VARCHAR(65535) NOT NULL, - "author" VARCHAR(65535), + "title" VARCHAR(8192) NOT NULL, + "author" VARCHAR(1024), "content" TEXT, - "link" VARCHAR(32768) NOT NULL, + "link" VARCHAR(16383) NOT NULL, "date" BIGINT, "lastSeen" BIGINT DEFAULT 0, "hash" BYTEA, "is_read" SMALLINT NOT NULL DEFAULT 0, "is_favorite" SMALLINT NOT NULL DEFAULT 0, "id_feed" INT, -- 1.20.0 - "tags" VARCHAR(65535), + "tags" VARCHAR(2048), "attributes" TEXT, -- v1.20.0 FOREIGN KEY ("id_feed") REFERENCES `_feed` ("id") ON DELETE CASCADE ON UPDATE CASCADE, UNIQUE ("id_feed","guid") @@ -66,17 +66,17 @@ INSERT INTO `_category` (id, name) CREATE TABLE IF NOT EXISTS `_entrytmp` ( -- v1.7 "id" BIGINT NOT NULL PRIMARY KEY, "guid" VARCHAR(767) NOT NULL, - "title" VARCHAR(65535) NOT NULL, - "author" VARCHAR(65535), + "title" VARCHAR(8192) NOT NULL, + "author" VARCHAR(1024), "content" TEXT, - "link" VARCHAR(32768) NOT NULL, + "link" VARCHAR(16383) NOT NULL, "date" BIGINT, "lastSeen" BIGINT DEFAULT 0, "hash" BYTEA, "is_read" SMALLINT NOT NULL DEFAULT 0, "is_favorite" SMALLINT NOT NULL DEFAULT 0, "id_feed" INT, -- 1.20.0 - "tags" VARCHAR(65535), + "tags" VARCHAR(2048), "attributes" TEXT, -- v1.20.0 FOREIGN KEY ("id_feed") REFERENCES `_feed` ("id") ON DELETE CASCADE ON UPDATE CASCADE, UNIQUE ("id_feed","guid") @@ -102,13 +102,30 @@ $GLOBALS['SQL_DROP_TABLES'] = <<<'SQL' DROP TABLE IF EXISTS `_entrytag`, `_tag`, `_entrytmp`, `_entry`, `_feed`, `_category`; SQL; -$GLOBALS['SQL_UPDATE_YEAR_2038'] = <<<'SQL' -ALTER TABLE `_entry` -- v1.23 +$GLOBALS['SQL_UPDATE_MINOR'] = <<<'SQL' +ALTER TABLE `_category` + ALTER COLUMN "name" SET DATA TYPE VARCHAR(191); +ALTER TABLE `_feed` + ALTER COLUMN "name" SET DATA TYPE VARCHAR(191), + ALTER COLUMN "lastUpdate" SET DATA TYPE BIGINT, + ALTER COLUMN "pathEntries" SET DATA TYPE VARCHAR(4096), + ALTER COLUMN "httpAuth" SET DATA TYPE VARCHAR(1024); +ALTER TABLE `_entry` ALTER COLUMN "date" SET DATA TYPE BIGINT, - ALTER COLUMN "lastSeen" SET DATA TYPE BIGINT; + ALTER COLUMN "lastSeen" SET DATA TYPE BIGINT, + ALTER COLUMN "guid" SET DATA TYPE VARCHAR(767), + ALTER COLUMN "title" SET DATA TYPE VARCHAR(8192), + ALTER COLUMN "author" SET DATA TYPE VARCHAR(1024), + ALTER COLUMN "link" SET DATA TYPE VARCHAR(16383), + ALTER COLUMN "tags" SET DATA TYPE VARCHAR(2048); ALTER TABLE `_entrytmp` ALTER COLUMN "date" SET DATA TYPE BIGINT, - ALTER COLUMN "lastSeen" SET DATA TYPE BIGINT; -ALTER TABLE `_feed` - ALTER COLUMN "lastUpdate" SET DATA TYPE BIGINT; + ALTER COLUMN "lastSeen" SET DATA TYPE BIGINT, + ALTER COLUMN "guid" SET DATA TYPE VARCHAR(767), + ALTER COLUMN "title" SET DATA TYPE VARCHAR(8192), + ALTER COLUMN "author" SET DATA TYPE VARCHAR(1024), + ALTER COLUMN "link" SET DATA TYPE VARCHAR(16383), + ALTER COLUMN "tags" SET DATA TYPE VARCHAR(2048); +ALTER TABLE `_tag` + ALTER COLUMN "name" SET DATA TYPE VARCHAR(191); SQL; |
