X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=maintenance%2Ftables.sql;h=8edc3c3f5e6b73c561da8cbdebf3335cb465c505;hb=ed6d53fd38cbc08ad503174aa09d155dc9867a13;hp=fe064f516ad6e90a830d7959c1fe794ee6df4447;hpb=9b140b4fc6d4aed0152f5717ccafb78bba1f08fc;p=lhc%2Fweb%2Fwiklou.git diff --git a/maintenance/tables.sql b/maintenance/tables.sql index fe064f516a..8edc3c3f5e 100644 --- a/maintenance/tables.sql +++ b/maintenance/tables.sql @@ -1091,7 +1091,11 @@ CREATE TABLE /*_*/ipblocks ( -- Autoblocks set this to the original block -- so that the original block being deleted also -- deletes the autoblocks - ipb_parent_block_id int default NULL + ipb_parent_block_id int default NULL, + + -- Block user from editing any page on the site (other than their own user + -- talk page). + ipb_sitewide bool NOT NULL default 1 ) /*$wgDBTableOptions*/; @@ -1114,6 +1118,26 @@ CREATE INDEX /*i*/ipb_expiry ON /*_*/ipblocks (ipb_expiry); -- Index for removing autoblocks when a parent block is removed CREATE INDEX /*i*/ipb_parent_block_id ON /*_*/ipblocks (ipb_parent_block_id); +-- +-- Partial Block Restrictions +-- +CREATE TABLE /*_*/ipblocks_restrictions ( + + -- The ipb_id from ipblocks + ir_ipb_id int NOT NULL, + + -- The restriction type id. + ir_type tinyint(1) NOT NULL, + + -- The restriction id that corrposponds to the type. Typically a Page ID or a + -- Namespace ID. + ir_value int NOT NULL, + + PRIMARY KEY (ir_ipb_id, ir_type, ir_value) +) /*$wgDBTableOptions*/; + +-- Index to query restrictions by the page or namespace. +CREATE INDEX /*i*/ir_type_value ON /*_*/ipblocks_restrictions (ir_type, ir_value); -- -- Uploaded images and other files. @@ -1584,16 +1608,6 @@ CREATE TABLE /*_*/objectcache ( CREATE INDEX /*i*/exptime ON /*_*/objectcache (exptime); --- --- Cache of interwiki transclusion --- -CREATE TABLE /*_*/transcache ( - tc_url varbinary(255) NOT NULL PRIMARY KEY, - tc_contents text, - tc_time binary(14) NOT NULL -) /*$wgDBTableOptions*/; - - CREATE TABLE /*_*/logging ( -- Log ID, for referring to this specific log entry, probably for deletion and such. log_id int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT, @@ -1847,16 +1861,20 @@ CREATE TABLE /*_*/change_tag ( -- REVID for the change ct_rev_id int unsigned NULL, -- Tag applied, this will go away and be replaced with ct_tag_id - ct_tag varchar(255) NOT NULL, + ct_tag varchar(255) NOT NULL default '', -- Parameters for the tag; used by some extensions ct_params blob NULL, -- Foreign key to change_tag_def row, this will be "NOT NULL" once populated ct_tag_id int unsigned NULL ) /*$wgDBTableOptions*/; -CREATE UNIQUE INDEX /*i*/change_tag_rc_tag ON /*_*/change_tag (ct_rc_id,ct_tag); -CREATE UNIQUE INDEX /*i*/change_tag_log_tag ON /*_*/change_tag (ct_log_id,ct_tag); -CREATE UNIQUE INDEX /*i*/change_tag_rev_tag ON /*_*/change_tag (ct_rev_id,ct_tag); +CREATE INDEX /*i*/change_tag_rc_tag_nonuniq ON /*_*/change_tag (ct_rc_id,ct_tag); +CREATE INDEX /*i*/change_tag_log_tag_nonuniq ON /*_*/change_tag (ct_log_id,ct_tag); +CREATE INDEX /*i*/change_tag_rev_tag_nonuniq ON /*_*/change_tag (ct_rev_id,ct_tag); + +CREATE UNIQUE INDEX /*i*/change_tag_rc_tag_id ON /*_*/change_tag (ct_rc_id,ct_tag_id); +CREATE UNIQUE INDEX /*i*/change_tag_log_tag_id ON /*_*/change_tag (ct_log_id,ct_tag_id); +CREATE UNIQUE INDEX /*i*/change_tag_rev_tag_id ON /*_*/change_tag (ct_rev_id,ct_tag_id); -- Covering index, so we can pull all the info only out of the index. CREATE INDEX /*i*/change_tag_tag_id ON /*_*/change_tag (ct_tag,ct_rc_id,ct_rev_id,ct_log_id); CREATE INDEX /*i*/change_tag_tag_id_id ON /*_*/change_tag (ct_tag_id,ct_rc_id,ct_rev_id,ct_log_id);