Merge "Improve docs for Title::getInternalURL/getCanonicalURL"
[lhc/web/wiklou.git] / maintenance / sqlite / archives / patch-oldimage-drop-oi_description.sql
1 --
2 -- patch-oldimage-drop-oi_description.sql
3 --
4 -- T166732. Drop old xx_comment fields, and defaults from xx_comment_id fields.
5
6 BEGIN;
7
8 DROP TABLE IF EXISTS /*_*/oldimage_tmp;
9 CREATE TABLE /*_*/oldimage_tmp (
10 oi_name varchar(255) binary NOT NULL default '',
11 oi_archive_name varchar(255) binary NOT NULL default '',
12 oi_size int unsigned NOT NULL default 0,
13 oi_width int NOT NULL default 0,
14 oi_height int NOT NULL default 0,
15 oi_bits int NOT NULL default 0,
16 oi_description_id bigint unsigned NOT NULL,
17 oi_user int unsigned NOT NULL default 0,
18 oi_user_text varchar(255) binary NOT NULL DEFAULT '',
19 oi_actor bigint unsigned NOT NULL DEFAULT 0,
20 oi_timestamp binary(14) NOT NULL default '',
21 oi_metadata mediumblob NOT NULL,
22 oi_media_type ENUM("UNKNOWN", "BITMAP", "DRAWING", "AUDIO", "VIDEO", "MULTIMEDIA", "OFFICE", "TEXT", "EXECUTABLE", "ARCHIVE", "3D") default NULL,
23 oi_major_mime ENUM("unknown", "application", "audio", "image", "text", "video", "message", "model", "multipart", "chemical") NOT NULL default "unknown",
24 oi_minor_mime varbinary(100) NOT NULL default "unknown",
25 oi_deleted tinyint unsigned NOT NULL default 0,
26 oi_sha1 varbinary(32) NOT NULL default ''
27 ) /*$wgDBTableOptions*/;
28
29 INSERT OR IGNORE INTO /*_*/oldimage_tmp (
30 oi_name, oi_archive_name, oi_size, oi_width, oi_height, oi_bits,
31 oi_description_id, oi_user, oi_user_text, oi_actor, oi_timestamp, oi_metadata,
32 oi_media_type, oi_major_mime, oi_minor_mime, oi_deleted, oi_sha1
33 ) SELECT
34 oi_name, oi_archive_name, oi_size, oi_width, oi_height, oi_bits,
35 oi_description_id, oi_user, oi_user_text, oi_actor, oi_timestamp, oi_metadata,
36 oi_media_type, oi_major_mime, oi_minor_mime, oi_deleted, oi_sha1
37 FROM /*_*/oldimage;
38
39 DROP TABLE /*_*/oldimage;
40 ALTER TABLE /*_*/oldimage_tmp RENAME TO /*_*/oldimage;
41 CREATE INDEX /*i*/oi_usertext_timestamp ON /*_*/oldimage (oi_user_text,oi_timestamp);
42 CREATE INDEX /*i*/oi_actor_timestamp ON /*_*/oldimage (oi_actor,oi_timestamp);
43 CREATE INDEX /*i*/oi_name_timestamp ON /*_*/oldimage (oi_name,oi_timestamp);
44 CREATE INDEX /*i*/oi_name_archive_name ON /*_*/oldimage (oi_name,oi_archive_name(14));
45 CREATE INDEX /*i*/oi_sha1 ON /*_*/oldimage (oi_sha1(10));
46
47 COMMIT;