Disable even more flaky/broken selenium tests
[lhc/web/wiklou.git] / maintenance / tables.sql
index d564e2d..df3264a 100644 (file)
@@ -365,6 +365,9 @@ CREATE TABLE /*_*/revision (
   -- It's possible for multiple revisions to use the same text,
   -- for instance revisions where only metadata is altered
   -- or a rollback to a previous version.
+  -- @deprecated since 1.31. If rows in the slots table with slot_revision_id = rev_id
+  -- exist, this field should be ignored (and may be 0) in favor of the
+  -- corresponding data from the slots and content tables
   rev_text_id int unsigned NOT NULL default 0,
 
   -- Text comment summarizing the change. Deprecated in favor of
@@ -401,9 +404,14 @@ CREATE TABLE /*_*/revision (
   rev_sha1 varbinary(32) NOT NULL default '',
 
   -- content model, see CONTENT_MODEL_XXX constants
+  -- @deprecated since 1.31. If rows in the slots table with slot_revision_id = rev_id
+  -- exist, this field should be ignored (and may be NULL) in favor of the
+  -- corresponding data from the slots and content tables
   rev_content_model varbinary(32) DEFAULT NULL,
 
   -- content format, see CONTENT_FORMAT_XXX constants
+  -- @deprecated since 1.31. If rows in the slots table with slot_revision_id = rev_id
+  -- exist, this field should be ignored (and may be NULL).
   rev_content_format varbinary(64) DEFAULT NULL
 
 ) /*$wgDBTableOptions*/ MAX_ROWS=10000000 AVG_ROW_LENGTH=1024;
@@ -584,14 +592,6 @@ CREATE TABLE /*_*/archive (
   -- Copied from page_title
   ar_title varchar(255) binary NOT NULL default '',
 
-  -- Copied from text.old_text, for pages deleted before MediaWiki 1.5.
-  -- This row may contain the raw revision text, possibly compressed.
-  -- Newer MediaWiki versions use ar_text_id instead.
-  -- This field is retained for backwards compatibility, so that
-  -- old archived pages will remain accessible.
-  -- See migrateArchiveText.php for migrating values to text storage.
-  ar_text mediumblob NOT NULL,
-
   -- Basic revision stuff...
   ar_comment varbinary(767) NOT NULL default '', -- Deprecated in favor of ar_comment_id
   ar_comment_id bigint unsigned NOT NULL DEFAULT 0, -- ("DEFAULT 0" is temporary, signaling that ar_comment should be used)
@@ -601,16 +601,11 @@ CREATE TABLE /*_*/archive (
   ar_timestamp binary(14) NOT NULL default '',
   ar_minor_edit tinyint NOT NULL default 0,
 
-  -- Copied from text.old_flags, for pages deleted before MediaWiki 1.5.
-  -- Otherwise empty string.
-  -- See also note for ar_text.
-  ar_flags tinyblob NOT NULL,
-
   -- Copied from rev_id.
   --
   -- @since 1.5 Entries from 1.4 will be NULL here. When restoring
   -- archive rows from before 1.5, a new rev_id is created.
-  ar_rev_id int unsigned,
+  ar_rev_id int unsigned NOT NULL,
 
   -- Copied from rev_text_id, references text.old_id.
   -- To avoid breaking the block-compression scheme and otherwise making
@@ -618,9 +613,10 @@ CREATE TABLE /*_*/archive (
   -- text storage. Instead, it is merely hidden from public view, by removal
   -- of the page and revision entries.
   --
-  -- @since 1.5 Entries from 1.2-1.4 will have NULL here. When restoring
-  -- archive rows without this, ar_text and ar_flags are used instead.
-  ar_text_id int unsigned,
+  -- @deprecated since 1.31. If rows in the slots table with slot_revision_id = ar_rev_id
+  -- exist, this field should be ignored (and may be 0) in favor of the
+  -- corresponding data from the slots and content tables
+  ar_text_id int unsigned NOT NULL DEFAULT 0,
 
   -- Copied from rev_deleted. Although this may be raised during deletion.
   -- Users with the "suppressrevision" right may "archive" and "suppress"
@@ -650,10 +646,15 @@ CREATE TABLE /*_*/archive (
 
   -- Copied from rev_content_model, see CONTENT_MODEL_XXX constants
   -- @since 1.21
+  -- @deprecated since 1.31. If rows in the slots table with slot_revision_id = ar_rev_id
+  -- exist, this field should be ignored (and may be NULL) in favor of the
+  -- corresponding data from the slots and content tables
   ar_content_model varbinary(32) DEFAULT NULL,
 
   -- Copied from rev_content_format, see CONTENT_FORMAT_XXX constants
   -- @since 1.21
+  -- @deprecated since 1.31. If rows in the slots table with slot_revision_id = ar_rev_id
+  -- exist, this field should be ignored (and may be NULL).
   ar_content_format varbinary(64) DEFAULT NULL
 ) /*$wgDBTableOptions*/;
 
@@ -675,7 +676,7 @@ CREATE INDEX /*i*/ar_revid ON /*_*/archive (ar_rev_id);
 --
 CREATE TABLE /*_*/slots (
 
-  -- reference to rev_id
+  -- reference to rev_id or ar_rev_id
   slot_revision_id bigint unsigned NOT NULL,
 
   -- reference to role_id
@@ -709,7 +710,9 @@ CREATE TABLE /*_*/content (
   -- Nominal hash of the content object (not necessarily of the serialized blob)
   content_sha1 varbinary(32) NOT NULL,
 
-  -- reference to model_id
+  -- reference to model_id. Note the content format isn't specified; it should
+  -- be assumed to be in the default format for the model unless auto-detected
+  -- otherwise.
   content_model smallint unsigned NOT NULL,
 
   -- URL-like address of the content blob
@@ -1149,9 +1152,11 @@ CREATE TABLE /*_*/image (
 
   -- Description field as entered by the uploader.
   -- This is displayed in image upload history and logs.
-  -- Deprecated in favor of image_comment_temp.imgcomment_description_id.
+  -- Deprecated in favor of img_description_id.
   img_description varbinary(767) NOT NULL default '',
 
+  img_description_id bigint unsigned NOT NULL DEFAULT 0, -- ("DEFAULT 0" is temporary, signaling that img_description should be used)
+
   -- user_id and user_name of uploader.
   -- Deprecated in favor of img_actor.
   img_user int unsigned NOT NULL default 0,
@@ -1444,7 +1449,7 @@ CREATE TABLE /*_*/recentchanges (
 CREATE INDEX /*i*/rc_timestamp ON /*_*/recentchanges (rc_timestamp);
 
 -- Special:Watchlist
-CREATE INDEX /*i*/rc_namespace_title ON /*_*/recentchanges (rc_namespace, rc_title);
+CREATE INDEX /*i*/rc_namespace_title_timestamp ON /*_*/recentchanges (rc_namespace, rc_title, rc_timestamp);
 
 -- Special:Recentchangeslinked when finding changes in pages linked from a page
 CREATE INDEX /*i*/rc_cur_id ON /*_*/recentchanges (rc_cur_id);