Fix SQLite patch-(page|template)links-fix-pk.sql column order
[lhc/web/wiklou.git] / maintenance / sqlite / archives / patch-recentchanges-drop-rc_comment.sql
1 --
2 -- patch-recentchanges-drop-rc_comment.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 /*_*/recentchanges_tmp;
9 CREATE TABLE /*_*/recentchanges_tmp (
10 rc_id int NOT NULL PRIMARY KEY AUTO_INCREMENT,
11 rc_timestamp varbinary(14) NOT NULL default '',
12 rc_user int unsigned NOT NULL default 0,
13 rc_user_text varchar(255) binary NOT NULL DEFAULT '',
14 rc_actor bigint unsigned NOT NULL DEFAULT 0,
15 rc_namespace int NOT NULL default 0,
16 rc_title varchar(255) binary NOT NULL default '',
17 rc_comment_id bigint unsigned NOT NULL,
18 rc_minor tinyint unsigned NOT NULL default 0,
19 rc_bot tinyint unsigned NOT NULL default 0,
20 rc_new tinyint unsigned NOT NULL default 0,
21 rc_cur_id int unsigned NOT NULL default 0,
22 rc_this_oldid int unsigned NOT NULL default 0,
23 rc_last_oldid int unsigned NOT NULL default 0,
24 rc_type tinyint unsigned NOT NULL default 0,
25 rc_source varchar(16) binary not null default '',
26 rc_patrolled tinyint unsigned NOT NULL default 0,
27 rc_ip varbinary(40) NOT NULL default '',
28 rc_old_len int,
29 rc_new_len int,
30 rc_deleted tinyint unsigned NOT NULL default 0,
31 rc_logid int unsigned NOT NULL default 0,
32 rc_log_type varbinary(255) NULL default NULL,
33 rc_log_action varbinary(255) NULL default NULL,
34 rc_params blob NULL
35 ) /*$wgDBTableOptions*/;
36
37 INSERT OR IGNORE INTO /*_*/recentchanges_tmp (
38 rc_id, rc_timestamp, rc_user, rc_user_text, rc_actor, rc_namespace, rc_title,
39 rc_comment_id, rc_minor, rc_bot, rc_new, rc_cur_id, rc_this_oldid, rc_last_oldid,
40 rc_type, rc_source, rc_patrolled, rc_ip, rc_old_len, rc_new_len, rc_deleted,
41 rc_logid, rc_log_type, rc_log_action, rc_params
42 ) SELECT
43 rc_id, rc_timestamp, rc_user, rc_user_text, rc_actor, rc_namespace, rc_title,
44 rc_comment_id, rc_minor, rc_bot, rc_new, rc_cur_id, rc_this_oldid, rc_last_oldid,
45 rc_type, rc_source, rc_patrolled, rc_ip, rc_old_len, rc_new_len, rc_deleted,
46 rc_logid, rc_log_type, rc_log_action, rc_params
47 FROM /*_*/recentchanges;
48
49 DROP TABLE /*_*/recentchanges;
50 ALTER TABLE /*_*/recentchanges_tmp RENAME TO /*_*/recentchanges;
51 CREATE INDEX /*i*/rc_timestamp ON /*_*/recentchanges (rc_timestamp);
52 CREATE INDEX /*i*/rc_namespace_title_timestamp ON /*_*/recentchanges (rc_namespace, rc_title, rc_timestamp);
53 CREATE INDEX /*i*/rc_cur_id ON /*_*/recentchanges (rc_cur_id);
54 CREATE INDEX /*i*/new_name_timestamp ON /*_*/recentchanges (rc_new,rc_namespace,rc_timestamp);
55 CREATE INDEX /*i*/rc_ip ON /*_*/recentchanges (rc_ip);
56 CREATE INDEX /*i*/rc_ns_usertext ON /*_*/recentchanges (rc_namespace, rc_user_text);
57 CREATE INDEX /*i*/rc_ns_actor ON /*_*/recentchanges (rc_namespace, rc_actor);
58 CREATE INDEX /*i*/rc_user_text ON /*_*/recentchanges (rc_user_text, rc_timestamp);
59 CREATE INDEX /*i*/rc_actor ON /*_*/recentchanges (rc_actor, rc_timestamp);
60 CREATE INDEX /*i*/rc_name_type_patrolled_timestamp ON /*_*/recentchanges (rc_namespace, rc_type, rc_patrolled, rc_timestamp);
61 CREATE INDEX /*i*/rc_this_oldid ON /*_*/recentchanges (rc_this_oldid);
62
63 COMMIT;