2 -- patch-image-img_description_id.sql
4 -- T188132. Add `img_description_id` to the `image` table.
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
varbinary(767) NOT NULL default '',
20 img_description_id
bigint unsigned
NOT NULL DEFAULT 0,
21 img_user
int unsigned
NOT NULL default 0,
22 img_user_text
varchar(255) binary NOT NULL default '',
23 img_timestamp
varbinary(14) NOT NULL default '',
24 img_sha1
varbinary(32) NOT NULL default ''
25 ) /*$wgDBTableOptions*/;
28 INSERT OR IGNORE INTO /*_*/image_tmp (
29 img_name
, img_size
, img_width
, img_height
, img_metadata
, img_bits
,
30 img_media_type
, img_major_mime
, img_minor_mime
, img_description
, img_user
,
31 img_user_text
, img_timestamp
, img_sha1
)
33 img_name
, img_size
, img_width
, img_height
, img_metadata
, img_bits
,
34 img_media_type
, img_major_mime
, img_minor_mime
, img_description
, img_user
,
35 img_user_text
, img_timestamp
, img_sha1
38 DROP TABLE /*_*/image
;
39 ALTER TABLE /*_*/image_tmp
RENAME TO /*_*/image
;
40 CREATE INDEX /*i*/img_user_timestamp
ON /*_*/image (img_user
,img_timestamp
);
41 CREATE INDEX /*i*/img_usertext_timestamp
ON /*_*/image (img_user_text
,img_timestamp
);
42 CREATE INDEX /*i*/img_size
ON /*_*/image (img_size
);
43 CREATE INDEX /*i*/img_timestamp
ON /*_*/image (img_timestamp
);
44 CREATE INDEX /*i*/img_sha1
ON /*_*/image (img_sha1(10));
45 CREATE INDEX /*i*/img_media_mime
ON /*_*/image (img_media_type
,img_major_mime
,img_minor_mime
);