3 DROP TABLE IF EXISTS /*_*/revision_tmp
;
4 CREATE TABLE /*_*/revision_tmp (
5 rev_id
int unsigned
NOT NULL PRIMARY KEY AUTO_INCREMENT
,
6 rev_page
int unsigned
NOT NULL,
7 rev_text_id
int unsigned
NOT NULL,
8 rev_comment
varbinary(767) NOT NULL default '',
9 rev_user
int unsigned
NOT NULL default 0,
10 rev_user_text
varchar(255) binary NOT NULL default '',
11 rev_timestamp
binary(14) NOT NULL default '',
12 rev_minor_edit tinyint unsigned
NOT NULL default 0,
13 rev_deleted tinyint unsigned
NOT NULL default 0,
15 rev_parent_id
int unsigned
default NULL,
16 rev_sha1
varbinary(32) NOT NULL default '',
17 rev_content_model
varbinary(32) DEFAULT NULL,
18 rev_content_format
varbinary(64) DEFAULT NULL
19 ) /*$wgDBTableOptions*/ MAX_ROWS
=10000000 AVG_ROW_LENGTH
=1024;
21 INSERT OR IGNORE INTO /*_*/revision_tmp (
22 rev_id
, rev_page
, rev_text_id
, rev_comment
, rev_user
, rev_user_text
,
23 rev_timestamp
, rev_minor_edit
, rev_deleted
, rev_len
, rev_parent_id
,
24 rev_sha1
, rev_content_model
, rev_content_format
)
26 rev_id
, rev_page
, rev_text_id
, rev_comment
, rev_user
, rev_user_text
,
27 rev_timestamp
, rev_minor_edit
, rev_deleted
, rev_len
, rev_parent_id
,
28 rev_sha1
, rev_content_model
, rev_content_format
31 DROP TABLE /*_*/revision
;
32 ALTER TABLE /*_*/revision_tmp
RENAME TO /*_*/revision
;
33 CREATE INDEX /*i*/rev_page_id
ON /*_*/revision (rev_page
, rev_id
);
34 CREATE INDEX /*i*/rev_timestamp
ON /*_*/revision (rev_timestamp
);
35 CREATE INDEX /*i*/page_timestamp
ON /*_*/revision (rev_page
,rev_timestamp
);
36 CREATE INDEX /*i*/user_timestamp
ON /*_*/revision (rev_user
,rev_timestamp
);
37 CREATE INDEX /*i*/usertext_timestamp
ON /*_*/revision (rev_user_text
,rev_timestamp
);
38 CREATE INDEX /*i*/page_user_timestamp
ON /*_*/revision (rev_page
,rev_user
,rev_timestamp
);