Merge "StringUtils: Add a utility for checking if a string is a valid regex"
[lhc/web/wiklou.git] / maintenance / sqlite / archives / patch-image-drop-img_user.sql
1 --
2 -- patch-image-drop-img_description.sql
3 --
4 -- T188327. Drop old xx_user and xx_user_text fields, and defaults from xx_actor fields.
5
6 BEGIN;
7
8 DROP TABLE IF EXISTS /*_*/image_tmp;
9 CREATE TABLE /*_*/image_tmp (
10 img_name varchar(255) binary NOT NULL default '' PRIMARY KEY,
11 img_size int unsigned NOT NULL default 0,
12 img_width int NOT NULL default 0,
13 img_height int NOT NULL default 0,
14 img_metadata mediumblob NOT NULL,
15 img_bits int NOT NULL default 0,
16 img_media_type ENUM("UNKNOWN", "BITMAP", "DRAWING", "AUDIO", "VIDEO", "MULTIMEDIA", "OFFICE", "TEXT", "EXECUTABLE", "ARCHIVE", "3D") default NULL,
17 img_major_mime ENUM("unknown", "application", "audio", "image", "text", "video", "message", "model", "multipart", "chemical") NOT NULL default "unknown",
18 img_minor_mime varbinary(100) NOT NULL default "unknown",
19 img_description_id bigint unsigned NOT NULL,
20 img_actor bigint unsigned NOT NULL,
21 img_timestamp varbinary(14) NOT NULL default '',
22 img_sha1 varbinary(32) NOT NULL default ''
23 ) /*$wgDBTableOptions*/;
24
25 INSERT OR IGNORE INTO /*_*/image_tmp (
26 img_name, img_size, img_width, img_height, img_metadata, img_bits,
27 img_media_type, img_major_mime, img_minor_mime, img_description_id,
28 img_actor, img_timestamp, img_sha1
29 ) SELECT
30 img_name, img_size, img_width, img_height, img_metadata, img_bits,
31 img_media_type, img_major_mime, img_minor_mime, img_description_id,
32 img_actor, img_timestamp, img_sha1
33 FROM /*_*/image;
34
35 DROP TABLE /*_*/image;
36 ALTER TABLE /*_*/image_tmp RENAME TO /*_*/image;
37 CREATE INDEX /*i*/img_actor_timestamp ON /*_*/image (img_actor,img_timestamp);
38 CREATE INDEX /*i*/img_size ON /*_*/image (img_size);
39 CREATE INDEX /*i*/img_timestamp ON /*_*/image (img_timestamp);
40 CREATE INDEX /*i*/img_sha1 ON /*_*/image (img_sha1(10));
41 CREATE INDEX /*i*/img_media_mime ON /*_*/image (img_media_type,img_major_mime,img_minor_mime);
42
43 COMMIT;