Support DAV servers that use ctag length up to 128 characters (T7282)
This commit is contained in:
parent
f6a4cdacaa
commit
de2609e6d0
6 changed files with 31 additions and 11 deletions
|
@ -7,9 +7,8 @@ CREATE TABLE `kolab_folders` (
|
|||
`resource` VARCHAR(255) BINARY NOT NULL,
|
||||
`type` VARCHAR(32) NOT NULL,
|
||||
`synclock` INT(10) NOT NULL DEFAULT '0',
|
||||
`ctag` VARCHAR(40) DEFAULT NULL,
|
||||
`ctag` VARCHAR(128) DEFAULT NULL,
|
||||
`changed` DATETIME DEFAULT NULL,
|
||||
`objectcount` BIGINT DEFAULT NULL,
|
||||
PRIMARY KEY(`folder_id`),
|
||||
INDEX `resource_type` (`resource`, `type`)
|
||||
) ROW_FORMAT=DYNAMIC ENGINE=INNODB CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
@ -230,4 +229,4 @@ CREATE TABLE `kolab_cache_dav_task` (
|
|||
|
||||
SET FOREIGN_KEY_CHECKS=1;
|
||||
|
||||
REPLACE INTO `system` (`name`, `value`) VALUES ('libkolab-version', '2022122800');
|
||||
REPLACE INTO `system` (`name`, `value`) VALUES ('libkolab-version', '2023111200');
|
||||
|
|
2
plugins/libkolab/SQL/mysql/2023111200.sql
Normal file
2
plugins/libkolab/SQL/mysql/2023111200.sql
Normal file
|
@ -0,0 +1,2 @@
|
|||
ALTER TABLE `kolab_folders` MODIFY `ctag` varchar(128);
|
||||
ALTER TABLE `kolab_folders` DROP COLUMN `objectcount`;
|
|
@ -9,9 +9,8 @@ CREATE TABLE kolab_folders (
|
|||
resource varchar(255) NOT NULL,
|
||||
"type" varchar(32) NOT NULL,
|
||||
synclock integer NOT NULL DEFAULT 0,
|
||||
ctag varchar(40) DEFAULT NULL,
|
||||
changed timestamp with time zone DEFAULT NULL,
|
||||
objectcount integer DEFAULT NULL
|
||||
ctag varchar(128) DEFAULT NULL,
|
||||
changed timestamp with time zone DEFAULT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX kolab_folders_resource_type_idx ON kolab_folders(resource, "type");
|
||||
|
@ -204,4 +203,4 @@ CREATE TABLE kolab_cache_dav_task (
|
|||
PRIMARY KEY(folder_id, uid)
|
||||
);
|
||||
|
||||
INSERT INTO "system" (name, "value") VALUES ('libkolab-version', '2022122800');
|
||||
INSERT INTO "system" (name, "value") VALUES ('libkolab-version', '2023111200');
|
||||
|
|
2
plugins/libkolab/SQL/postgres/2023111200.sql
Normal file
2
plugins/libkolab/SQL/postgres/2023111200.sql
Normal file
|
@ -0,0 +1,2 @@
|
|||
ALTER TABLE kolab_folders ALTER COLUMN ctag TYPE varchar(128);
|
||||
ALTER TABLE kolab_folders DROP COLUMN objectcount;
|
|
@ -3,9 +3,8 @@ CREATE TABLE kolab_folders (
|
|||
resource VARCHAR(255) NOT NULL,
|
||||
type VARCHAR(32) NOT NULL,
|
||||
synclock INTEGER NOT NULL DEFAULT '0',
|
||||
ctag VARCHAR(40) DEFAULT NULL,
|
||||
changed DATETIME DEFAULT NULL,
|
||||
objectcount INTEGER DEFAULT NULL
|
||||
ctag VARCHAR(128) DEFAULT NULL,
|
||||
changed DATETIME DEFAULT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX ix_resource_type ON kolab_folders(resource, type);
|
||||
|
@ -187,4 +186,4 @@ CREATE TABLE kolab_cache_dav_task (
|
|||
PRIMARY KEY(folder_id, uid)
|
||||
);
|
||||
|
||||
INSERT INTO system (name, value) VALUES ('libkolab-version', '2022122800');
|
||||
INSERT INTO system (name, value) VALUES ('libkolab-version', '2023111200');
|
||||
|
|
19
plugins/libkolab/SQL/sqlite/2023111200.sql
Normal file
19
plugins/libkolab/SQL/sqlite/2023111200.sql
Normal file
|
@ -0,0 +1,19 @@
|
|||
PRAGMA foreign_keys=OFF;
|
||||
|
||||
ALTER TABLE kolab_folders RENAME TO kolab_folders_old;
|
||||
|
||||
CREATE TABLE kolab_folders (
|
||||
folder_id INTEGER NOT NULL PRIMARY KEY,
|
||||
resource VARCHAR(255) NOT NULL,
|
||||
type VARCHAR(32) NOT NULL,
|
||||
synclock INTEGER NOT NULL DEFAULT '0',
|
||||
ctag VARCHAR(128) DEFAULT NULL,
|
||||
changed DATETIME DEFAULT NULL
|
||||
);
|
||||
|
||||
INSERT INTO kolab_folders (folder_id, resource, type, synclock, ctag, changed)
|
||||
SELECT folder_id, resource, type, synclock, ctag, changed FROM kolab_folders_old;
|
||||
|
||||
CREATE INDEX ix_resource_type ON kolab_folders(resource, type);
|
||||
|
||||
DROP TABLE kolab_folders_old;
|
Loading…
Add table
Reference in a new issue