Fix problem with disappearing events caused by DB errors (#4257)
Object "tags" string may for some object types be longer than 255 characters. Modified "tags" column type to text (clob in Oracle) for all kolab_cache_* tables.
This commit is contained in:
parent
0dc0490ba0
commit
bd9b14e3c6
4 changed files with 66 additions and 18 deletions
|
@ -31,7 +31,7 @@ CREATE TABLE `kolab_cache_contact` (
|
||||||
`changed` DATETIME DEFAULT NULL,
|
`changed` DATETIME DEFAULT NULL,
|
||||||
`data` LONGTEXT NOT NULL,
|
`data` LONGTEXT NOT NULL,
|
||||||
`xml` LONGBLOB NOT NULL,
|
`xml` LONGBLOB NOT NULL,
|
||||||
`tags` VARCHAR(255) NOT NULL,
|
`tags` TEXT NOT NULL,
|
||||||
`words` TEXT NOT NULL,
|
`words` TEXT NOT NULL,
|
||||||
`type` VARCHAR(32) CHARACTER SET ascii NOT NULL,
|
`type` VARCHAR(32) CHARACTER SET ascii NOT NULL,
|
||||||
`name` VARCHAR(255) NOT NULL,
|
`name` VARCHAR(255) NOT NULL,
|
||||||
|
@ -55,7 +55,7 @@ CREATE TABLE `kolab_cache_event` (
|
||||||
`changed` DATETIME DEFAULT NULL,
|
`changed` DATETIME DEFAULT NULL,
|
||||||
`data` LONGTEXT NOT NULL,
|
`data` LONGTEXT NOT NULL,
|
||||||
`xml` LONGBLOB NOT NULL,
|
`xml` LONGBLOB NOT NULL,
|
||||||
`tags` VARCHAR(255) NOT NULL,
|
`tags` TEXT NOT NULL,
|
||||||
`words` TEXT NOT NULL,
|
`words` TEXT NOT NULL,
|
||||||
`dtstart` DATETIME,
|
`dtstart` DATETIME,
|
||||||
`dtend` DATETIME,
|
`dtend` DATETIME,
|
||||||
|
@ -75,7 +75,7 @@ CREATE TABLE `kolab_cache_task` (
|
||||||
`changed` DATETIME DEFAULT NULL,
|
`changed` DATETIME DEFAULT NULL,
|
||||||
`data` LONGTEXT NOT NULL,
|
`data` LONGTEXT NOT NULL,
|
||||||
`xml` LONGBLOB NOT NULL,
|
`xml` LONGBLOB NOT NULL,
|
||||||
`tags` VARCHAR(255) NOT NULL,
|
`tags` TEXT NOT NULL,
|
||||||
`words` TEXT NOT NULL,
|
`words` TEXT NOT NULL,
|
||||||
`dtstart` DATETIME,
|
`dtstart` DATETIME,
|
||||||
`dtend` DATETIME,
|
`dtend` DATETIME,
|
||||||
|
@ -95,7 +95,7 @@ CREATE TABLE `kolab_cache_journal` (
|
||||||
`changed` DATETIME DEFAULT NULL,
|
`changed` DATETIME DEFAULT NULL,
|
||||||
`data` LONGTEXT NOT NULL,
|
`data` LONGTEXT NOT NULL,
|
||||||
`xml` LONGBLOB NOT NULL,
|
`xml` LONGBLOB NOT NULL,
|
||||||
`tags` VARCHAR(255) NOT NULL,
|
`tags` TEXT NOT NULL,
|
||||||
`words` TEXT NOT NULL,
|
`words` TEXT NOT NULL,
|
||||||
`dtstart` DATETIME,
|
`dtstart` DATETIME,
|
||||||
`dtend` DATETIME,
|
`dtend` DATETIME,
|
||||||
|
@ -115,7 +115,7 @@ CREATE TABLE `kolab_cache_note` (
|
||||||
`changed` DATETIME DEFAULT NULL,
|
`changed` DATETIME DEFAULT NULL,
|
||||||
`data` LONGTEXT NOT NULL,
|
`data` LONGTEXT NOT NULL,
|
||||||
`xml` LONGBLOB NOT NULL,
|
`xml` LONGBLOB NOT NULL,
|
||||||
`tags` VARCHAR(255) NOT NULL,
|
`tags` TEXT NOT NULL,
|
||||||
`words` TEXT NOT NULL,
|
`words` TEXT NOT NULL,
|
||||||
CONSTRAINT `fk_kolab_cache_note_folder` FOREIGN KEY (`folder_id`)
|
CONSTRAINT `fk_kolab_cache_note_folder` FOREIGN KEY (`folder_id`)
|
||||||
REFERENCES `kolab_folders`(`folder_id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
REFERENCES `kolab_folders`(`folder_id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||||
|
@ -133,7 +133,7 @@ CREATE TABLE `kolab_cache_file` (
|
||||||
`changed` DATETIME DEFAULT NULL,
|
`changed` DATETIME DEFAULT NULL,
|
||||||
`data` LONGTEXT NOT NULL,
|
`data` LONGTEXT NOT NULL,
|
||||||
`xml` LONGBLOB NOT NULL,
|
`xml` LONGBLOB NOT NULL,
|
||||||
`tags` VARCHAR(255) NOT NULL,
|
`tags` TEXT NOT NULL,
|
||||||
`words` TEXT NOT NULL,
|
`words` TEXT NOT NULL,
|
||||||
`filename` varchar(255) DEFAULT NULL,
|
`filename` varchar(255) DEFAULT NULL,
|
||||||
CONSTRAINT `fk_kolab_cache_file_folder` FOREIGN KEY (`folder_id`)
|
CONSTRAINT `fk_kolab_cache_file_folder` FOREIGN KEY (`folder_id`)
|
||||||
|
@ -153,7 +153,7 @@ CREATE TABLE `kolab_cache_configuration` (
|
||||||
`changed` DATETIME DEFAULT NULL,
|
`changed` DATETIME DEFAULT NULL,
|
||||||
`data` LONGTEXT NOT NULL,
|
`data` LONGTEXT NOT NULL,
|
||||||
`xml` LONGBLOB NOT NULL,
|
`xml` LONGBLOB NOT NULL,
|
||||||
`tags` VARCHAR(255) NOT NULL,
|
`tags` TEXT NOT NULL,
|
||||||
`words` TEXT NOT NULL,
|
`words` TEXT NOT NULL,
|
||||||
`type` VARCHAR(32) CHARACTER SET ascii NOT NULL,
|
`type` VARCHAR(32) CHARACTER SET ascii NOT NULL,
|
||||||
CONSTRAINT `fk_kolab_cache_configuration_folder` FOREIGN KEY (`folder_id`)
|
CONSTRAINT `fk_kolab_cache_configuration_folder` FOREIGN KEY (`folder_id`)
|
||||||
|
@ -173,7 +173,7 @@ CREATE TABLE `kolab_cache_freebusy` (
|
||||||
`changed` DATETIME DEFAULT NULL,
|
`changed` DATETIME DEFAULT NULL,
|
||||||
`data` LONGTEXT NOT NULL,
|
`data` LONGTEXT NOT NULL,
|
||||||
`xml` LONGBLOB NOT NULL,
|
`xml` LONGBLOB NOT NULL,
|
||||||
`tags` VARCHAR(255) NOT NULL,
|
`tags` TEXT NOT NULL,
|
||||||
`words` TEXT NOT NULL,
|
`words` TEXT NOT NULL,
|
||||||
`dtstart` DATETIME,
|
`dtstart` DATETIME,
|
||||||
`dtend` DATETIME,
|
`dtend` DATETIME,
|
||||||
|
@ -184,4 +184,4 @@ CREATE TABLE `kolab_cache_freebusy` (
|
||||||
) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */;
|
) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */;
|
||||||
|
|
||||||
|
|
||||||
INSERT INTO `system` (`name`, `value`) VALUES ('libkolab-version', '2014021000');
|
INSERT INTO `system` (`name`, `value`) VALUES ('libkolab-version', '2015011600');
|
||||||
|
|
8
plugins/libkolab/SQL/mysql/2015011600.sql
Normal file
8
plugins/libkolab/SQL/mysql/2015011600.sql
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
ALTER TABLE `kolab_cache_contact` MODIFY `tags` text NOT NULL;
|
||||||
|
ALTER TABLE `kolab_cache_event` MODIFY `tags` text NOT NULL;
|
||||||
|
ALTER TABLE `kolab_cache_task` MODIFY `tags` text NOT NULL;
|
||||||
|
ALTER TABLE `kolab_cache_journal` MODIFY `tags` text NOT NULL;
|
||||||
|
ALTER TABLE `kolab_cache_note` MODIFY `tags` text NOT NULL;
|
||||||
|
ALTER TABLE `kolab_cache_file` MODIFY `tags` text NOT NULL;
|
||||||
|
ALTER TABLE `kolab_cache_configuration` MODIFY `tags` text NOT NULL;
|
||||||
|
ALTER TABLE `kolab_cache_freebusy` MODIFY `tags` text NOT NULL;
|
|
@ -36,7 +36,7 @@ CREATE TABLE "kolab_cache_contact" (
|
||||||
"changed" timestamp DEFAULT NULL,
|
"changed" timestamp DEFAULT NULL,
|
||||||
"data" clob NOT NULL,
|
"data" clob NOT NULL,
|
||||||
"xml" clob NOT NULL,
|
"xml" clob NOT NULL,
|
||||||
"tags" varchar(255) DEFAULT NULL,
|
"tags" clob DEFAULT NULL,
|
||||||
"words" clob DEFAULT NULL,
|
"words" clob DEFAULT NULL,
|
||||||
"type" varchar(32) NOT NULL,
|
"type" varchar(32) NOT NULL,
|
||||||
"name" varchar(255) DEFAULT NULL,
|
"name" varchar(255) DEFAULT NULL,
|
||||||
|
@ -59,7 +59,7 @@ CREATE TABLE "kolab_cache_event" (
|
||||||
"changed" timestamp DEFAULT NULL,
|
"changed" timestamp DEFAULT NULL,
|
||||||
"data" clob NOT NULL,
|
"data" clob NOT NULL,
|
||||||
"xml" clob NOT NULL,
|
"xml" clob NOT NULL,
|
||||||
"tags" varchar(255) DEFAULT NULL,
|
"tags" clob DEFAULT NULL,
|
||||||
"words" clob DEFAULT NULL,
|
"words" clob DEFAULT NULL,
|
||||||
"dtstart" timestamp DEFAULT NULL,
|
"dtstart" timestamp DEFAULT NULL,
|
||||||
"dtend" timestamp DEFAULT NULL,
|
"dtend" timestamp DEFAULT NULL,
|
||||||
|
@ -78,7 +78,7 @@ CREATE TABLE "kolab_cache_task" (
|
||||||
"changed" timestamp DEFAULT NULL,
|
"changed" timestamp DEFAULT NULL,
|
||||||
"data" clob NOT NULL,
|
"data" clob NOT NULL,
|
||||||
"xml" clob NOT NULL,
|
"xml" clob NOT NULL,
|
||||||
"tags" varchar(255) DEFAULT NULL,
|
"tags" clob DEFAULT NULL,
|
||||||
"words" clob DEFAULT NULL,
|
"words" clob DEFAULT NULL,
|
||||||
"dtstart" timestamp DEFAULT NULL,
|
"dtstart" timestamp DEFAULT NULL,
|
||||||
"dtend" timestamp DEFAULT NULL,
|
"dtend" timestamp DEFAULT NULL,
|
||||||
|
@ -97,7 +97,7 @@ CREATE TABLE "kolab_cache_journal" (
|
||||||
"changed" timestamp DEFAULT NULL,
|
"changed" timestamp DEFAULT NULL,
|
||||||
"data" clob NOT NULL,
|
"data" clob NOT NULL,
|
||||||
"xml" clob NOT NULL,
|
"xml" clob NOT NULL,
|
||||||
"tags" varchar(255) DEFAULT NULL,
|
"tags" clob DEFAULT NULL,
|
||||||
"words" clob DEFAULT NULL,
|
"words" clob DEFAULT NULL,
|
||||||
"dtstart" timestamp DEFAULT NULL,
|
"dtstart" timestamp DEFAULT NULL,
|
||||||
"dtend" timestamp DEFAULT NULL,
|
"dtend" timestamp DEFAULT NULL,
|
||||||
|
@ -116,7 +116,7 @@ CREATE TABLE "kolab_cache_note" (
|
||||||
"changed" timestamp DEFAULT NULL,
|
"changed" timestamp DEFAULT NULL,
|
||||||
"data" clob NOT NULL,
|
"data" clob NOT NULL,
|
||||||
"xml" clob NOT NULL,
|
"xml" clob NOT NULL,
|
||||||
"tags" varchar(255) DEFAULT NULL,
|
"tags" clob DEFAULT NULL,
|
||||||
"words" clob DEFAULT NULL,
|
"words" clob DEFAULT NULL,
|
||||||
PRIMARY KEY ("folder_id", "msguid")
|
PRIMARY KEY ("folder_id", "msguid")
|
||||||
);
|
);
|
||||||
|
@ -133,7 +133,7 @@ CREATE TABLE "kolab_cache_file" (
|
||||||
"changed" timestamp DEFAULT NULL,
|
"changed" timestamp DEFAULT NULL,
|
||||||
"data" clob NOT NULL,
|
"data" clob NOT NULL,
|
||||||
"xml" clob NOT NULL,
|
"xml" clob NOT NULL,
|
||||||
"tags" varchar(255) DEFAULT NULL,
|
"tags" clob DEFAULT NULL,
|
||||||
"words" clob DEFAULT NULL,
|
"words" clob DEFAULT NULL,
|
||||||
"filename" varchar(255) DEFAULT NULL,
|
"filename" varchar(255) DEFAULT NULL,
|
||||||
PRIMARY KEY ("folder_id", "msguid")
|
PRIMARY KEY ("folder_id", "msguid")
|
||||||
|
@ -152,7 +152,7 @@ CREATE TABLE "kolab_cache_configuration" (
|
||||||
"changed" timestamp DEFAULT NULL,
|
"changed" timestamp DEFAULT NULL,
|
||||||
"data" clob NOT NULL,
|
"data" clob NOT NULL,
|
||||||
"xml" clob NOT NULL,
|
"xml" clob NOT NULL,
|
||||||
"tags" varchar(255) DEFAULT NULL,
|
"tags" clob DEFAULT NULL,
|
||||||
"words" clob DEFAULT NULL,
|
"words" clob DEFAULT NULL,
|
||||||
"type" varchar(32) NOT NULL,
|
"type" varchar(32) NOT NULL,
|
||||||
PRIMARY KEY ("folder_id", "msguid")
|
PRIMARY KEY ("folder_id", "msguid")
|
||||||
|
@ -171,7 +171,7 @@ CREATE TABLE "kolab_cache_freebusy" (
|
||||||
"changed" timestamp DEFAULT NULL,
|
"changed" timestamp DEFAULT NULL,
|
||||||
"data" clob NOT NULL,
|
"data" clob NOT NULL,
|
||||||
"xml" clob NOT NULL,
|
"xml" clob NOT NULL,
|
||||||
"tags" varchar(255) DEFAULT NULL,
|
"tags" clob DEFAULT NULL,
|
||||||
"words" clob DEFAULT NULL,
|
"words" clob DEFAULT NULL,
|
||||||
"dtstart" timestamp DEFAULT NULL,
|
"dtstart" timestamp DEFAULT NULL,
|
||||||
"dtend" timestamp DEFAULT NULL,
|
"dtend" timestamp DEFAULT NULL,
|
||||||
|
@ -181,4 +181,4 @@ CREATE TABLE "kolab_cache_freebusy" (
|
||||||
CREATE INDEX "kolab_cache_fb_uid2msguid" ON "kolab_cache_freebusy" ("folder_id", "uid", "msguid");
|
CREATE INDEX "kolab_cache_fb_uid2msguid" ON "kolab_cache_freebusy" ("folder_id", "uid", "msguid");
|
||||||
|
|
||||||
|
|
||||||
INSERT INTO "system" ("name", "value") VALUES ('libkolab-version', '2014021000');
|
INSERT INTO "system" ("name", "value") VALUES ('libkolab-version', '2015011600');
|
||||||
|
|
40
plugins/libkolab/SQL/oracle/2015011600.sql
Normal file
40
plugins/libkolab/SQL/oracle/2015011600.sql
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
-- direct change from varchar to clob does not work, need temp column (#4257)
|
||||||
|
ALTER TABLE "kolab_cache_contact" ADD "tags1" clob DEFAULT NULL;
|
||||||
|
UPDATE "kolab_cache_contact" SET "tags1" = "tags";
|
||||||
|
ALTER TABLE "kolab_cache_contact" DROP COLUMN "tags";
|
||||||
|
ALTER TABLE "kolab_cache_contact" RENAME COLUMN "tags1" TO "tags";
|
||||||
|
|
||||||
|
ALTER TABLE "kolab_cache_event" ADD "tags1" clob DEFAULT NULL;
|
||||||
|
UPDATE "kolab_cache_event" SET "tags1" = "tags";
|
||||||
|
ALTER TABLE "kolab_cache_event" DROP COLUMN "tags";
|
||||||
|
ALTER TABLE "kolab_cache_event" RENAME COLUMN "tags1" TO "tags";
|
||||||
|
|
||||||
|
ALTER TABLE "kolab_cache_task" ADD "tags1" clob DEFAULT NULL;
|
||||||
|
UPDATE "kolab_cache_task" SET "tags1" = "tags";
|
||||||
|
ALTER TABLE "kolab_cache_task" DROP COLUMN "tags";
|
||||||
|
ALTER TABLE "kolab_cache_task" RENAME COLUMN "tags1" TO "tags";
|
||||||
|
|
||||||
|
ALTER TABLE "kolab_cache_journal" ADD "tags1" clob DEFAULT NULL;
|
||||||
|
UPDATE "kolab_cache_journal" SET "tags1" = "tags";
|
||||||
|
ALTER TABLE "kolab_cache_journal" DROP COLUMN "tags";
|
||||||
|
ALTER TABLE "kolab_cache_journal" RENAME COLUMN "tags1" TO "tags";
|
||||||
|
|
||||||
|
ALTER TABLE "kolab_cache_note" ADD "tags1" clob DEFAULT NULL;
|
||||||
|
UPDATE "kolab_cache_note" SET "tags1" = "tags";
|
||||||
|
ALTER TABLE "kolab_cache_note" DROP COLUMN "tags";
|
||||||
|
ALTER TABLE "kolab_cache_note" RENAME COLUMN "tags1" TO "tags";
|
||||||
|
|
||||||
|
ALTER TABLE "kolab_cache_file" ADD "tags1" clob DEFAULT NULL;
|
||||||
|
UPDATE "kolab_cache_file" SET "tags1" = "tags";
|
||||||
|
ALTER TABLE "kolab_cache_file" DROP COLUMN "tags";
|
||||||
|
ALTER TABLE "kolab_cache_file" RENAME COLUMN "tags1" TO "tags";
|
||||||
|
|
||||||
|
ALTER TABLE "kolab_cache_configuration" ADD "tags1" clob DEFAULT NULL;
|
||||||
|
UPDATE "kolab_cache_configuration" SET "tags1" = "tags";
|
||||||
|
ALTER TABLE "kolab_cache_configuration" DROP COLUMN "tags";
|
||||||
|
ALTER TABLE "kolab_cache_configuration" RENAME COLUMN "tags1" TO "tags";
|
||||||
|
|
||||||
|
ALTER TABLE "kolab_cache_freebusy" ADD "tags1" clob DEFAULT NULL;
|
||||||
|
UPDATE "kolab_cache_freebusy" SET "tags1" = "tags";
|
||||||
|
ALTER TABLE "kolab_cache_freebusy" DROP COLUMN "tags";
|
||||||
|
ALTER TABLE "kolab_cache_freebusy" RENAME COLUMN "tags1" TO "tags";
|
Loading…
Add table
Reference in a new issue