Merge "StringUtils: Add a utility for checking if a string is a valid regex"
[lhc/web/wiklou.git] / maintenance / sqlite / archives / patch-logging-drop-log_user.sql
1 --
2 -- patch-logging-drop-log_user.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 /*_*/logging_tmp;
9 CREATE TABLE /*_*/logging_tmp (
10 log_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT,
11 log_type varbinary(32) NOT NULL default '',
12 log_action varbinary(32) NOT NULL default '',
13 log_timestamp binary(14) NOT NULL default '19700101000000',
14 log_actor bigint unsigned NOT NULL DEFAULT 0,
15 log_namespace int NOT NULL default 0,
16 log_title varchar(255) binary NOT NULL default '',
17 log_page int unsigned NULL,
18 log_comment_id bigint unsigned NOT NULL,
19 log_params blob NOT NULL,
20 log_deleted tinyint unsigned NOT NULL default 0
21 ) /*$wgDBTableOptions*/;
22
23 INSERT OR IGNORE INTO /*_*/logging_tmp (
24 log_id, log_type, log_action, log_timestamp, log_actor,
25 log_namespace, log_title, log_page, log_comment_id, log_params, log_deleted
26 ) SELECT
27 log_id, log_type, log_action, log_timestamp, log_actor,
28 log_namespace, log_title, log_page, log_comment_id, log_params, log_deleted
29 FROM /*_*/logging;
30
31 DROP TABLE /*_*/logging;
32 ALTER TABLE /*_*/logging_tmp RENAME TO /*_*/logging;
33 CREATE INDEX /*i*/type_time ON /*_*/logging (log_type, log_timestamp);
34 CREATE INDEX /*i*/actor_time ON /*_*/logging (log_actor, log_timestamp);
35 CREATE INDEX /*i*/page_time ON /*_*/logging (log_namespace, log_title, log_timestamp);
36 CREATE INDEX /*i*/times ON /*_*/logging (log_timestamp);
37 CREATE INDEX /*i*/log_actor_type_time ON /*_*/logging (log_actor, log_type, log_timestamp);
38 CREATE INDEX /*i*/log_page_id_time ON /*_*/logging (log_page,log_timestamp);
39 CREATE INDEX /*i*/log_type_action ON /*_*/logging (log_type, log_action, log_timestamp);
40
41 COMMIT;