Manual:Content table
↑ Manual:Contents | MediaWiki database layout | content table |
MediaWiki version: | ≥ 1.31 |
The content table represents content objects. A content row represents a slot of a wiki page. The same content row can be reused for many revisions (e.g. when the edits only changed other slots); its association with revisions is tracked by the slots table.
The content table does not hold the actual content (such as the wikitext of a page), just a reference to it. Its primary purpose is to provide the necessary meta-data for loading and interpreting a serialized data blob to create a content object.
It was introduced in MediaWiki 1.31 as part of the Multi-Content Revisions project; see Multi-Content Revisions/Content Meta-Data for details. During migration from older versions, the table is populated by populateContentTables.php (run automatically by the upgrade script).
Fields
content_id
ID of the content object
content_size
Nominal size of the content object (not necessarily of the serialized blob)
content_sha1
Nominal hash of the content object (not necessarily of the serialized blob)
content_model
Reference to content_models.model_id. Note the serialization format isn't specified; it should be assumed to be in the default format for the model unless auto-detected otherwise.
content_address
URL-like address of the content blob.
Usually the structure is: tt:<id>
where <id>
is a number referencing the text.old_id column.
Since MediaWiki 1.43 (task T362566), when using external storage, the structure is es:<URL>
where <URL>
is an External Storage reference, with flags added as a query string. Example:
es:DB://cluster1/692465?flags=utf-8,gzip
Schema summary
MediaWiki version: | ≥ 1.31 |
DESCRIBE content;
+-----------------+----------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------------+----------------------+------+-----+---------+----------------+ | content_id | bigint(20) unsigned | NO | PRI | NULL | auto_increment | | content_size | int(10) unsigned | NO | | NULL | | | content_sha1 | varbinary(32) | NO | | NULL | | | content_model | smallint(5) unsigned | NO | | NULL | | | content_address | varbinary(255) | NO | | NULL | | +-----------------+----------------------+------+-----+---------+----------------+
Indexes
MediaWiki version: | ≥ 1.31 |
SHOW INDEX IN content;
+---------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ | Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment | +---------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ | content | 0 | PRIMARY | 1 | content_id | A | 0 | NULL | NULL | | BTREE | | | +---------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+