Split down patch-comment-table.sql
[lhc/web/wiklou.git] / maintenance / sqlite / archives / patch-archive-ar_comment_id.sql
1 BEGIN;
2
3 DROP TABLE IF EXISTS /*_*/archive_tmp;
4 CREATE TABLE /*_*/archive_tmp (
5 ar_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT,
6 ar_namespace int NOT NULL default 0,
7 ar_title varchar(255) binary NOT NULL default '',
8 ar_text mediumblob NOT NULL,
9 ar_comment varbinary(767) NOT NULL default '',
10 ar_comment_id bigint unsigned NOT NULL DEFAULT 0,
11 ar_user int unsigned NOT NULL default 0,
12 ar_user_text varchar(255) binary NOT NULL,
13 ar_timestamp binary(14) NOT NULL default '',
14 ar_minor_edit tinyint NOT NULL default 0,
15 ar_flags tinyblob NOT NULL,
16 ar_rev_id int unsigned,
17 ar_text_id int unsigned,
18 ar_deleted tinyint unsigned NOT NULL default 0,
19 ar_len int unsigned,
20 ar_page_id int unsigned,
21 ar_parent_id int unsigned default NULL,
22 ar_sha1 varbinary(32) NOT NULL default '',
23 ar_content_model varbinary(32) DEFAULT NULL,
24 ar_content_format varbinary(64) DEFAULT NULL
25 ) /*$wgDBTableOptions*/;
26
27 INSERT OR IGNORE INTO /*_*/archive_tmp (
28 ar_id, ar_namespace, ar_title, ar_text, ar_comment, ar_user, ar_user_text,
29 ar_timestamp, ar_minor_edit, ar_flags, ar_rev_id, ar_text_id, ar_deleted,
30 ar_len, ar_page_id, ar_parent_id, ar_sha1, ar_content_model,
31 ar_content_format)
32 SELECT
33 ar_id, ar_namespace, ar_title, ar_text, ar_comment, ar_user, ar_user_text,
34 ar_timestamp, ar_minor_edit, ar_flags, ar_rev_id, ar_text_id, ar_deleted,
35 ar_len, ar_page_id, ar_parent_id, ar_sha1, ar_content_model,
36 ar_content_format
37 FROM /*_*/archive;
38
39 DROP TABLE /*_*/archive;
40 ALTER TABLE /*_*/archive_tmp RENAME TO /*_*/archive;
41 CREATE INDEX /*i*/name_title_timestamp ON /*_*/archive (ar_namespace,ar_title,ar_timestamp);
42 CREATE INDEX /*i*/ar_usertext_timestamp ON /*_*/archive (ar_user_text,ar_timestamp);
43 CREATE INDEX /*i*/ar_revid ON /*_*/archive (ar_rev_id);
44
45 COMMIT;
46