[ { "name": "discussiontools_items", "columns": [ { "name": "it_id", "type": "integer", "options": { "autoincrement": true, "unsigned": true, "notnull": true } }, { "name": "it_itemname", "comment": "Internal name used to identify this item across all pages and revisions where it might appear, see CommentParser::computeName()", "type": "binary", "options": { "notnull": true, "length": 255 } }, { "name": "it_timestamp", "comment": "Date and time from signature, or null for headings", "type": "mwtimestamp", "options": { "notnull": false } }, { "name": "it_actor", "comment": "Author from signature, or null for headings. (key to actor.actor_id)", "type": "bigint", "options": { "unsigned": true, "notnull": false } } ], "indexes": [ { "name": "it_itemname", "comment": "", "columns": [ "it_itemname" ], "unique": true } ], "pk": [ "it_id" ] }, { "name": "discussiontools_item_ids", "columns": [ { "name": "itid_id", "type": "integer", "options": { "autoincrement": true, "unsigned": true, "notnull": true } }, { "name": "itid_itemid", "comment": "Internal ID used to identify this item in this revision, see CommentParser::computeId()", "type": "binary", "options": { "notnull": true, "length": 255 } } ], "indexes": [ { "name": "itid_itemid", "comment": "", "columns": [ "itid_itemid" ], "unique": true } ], "pk": [ "itid_id" ] }, { "name": "discussiontools_item_pages", "comment": "Data in this table is redundant to discussiontools_item_revisions, but if we want to find all pages where a given comment has appeared, querying it from that table would require some awful joins and be expensive", "columns": [ { "name": "itp_id", "type": "integer", "options": { "autoincrement": true, "unsigned": true, "notnull": true } }, { "name": "itp_items_id", "comment": "(key to discussiontools_items.it_id)", "type": "integer", "options": { "unsigned": true, "notnull": true } }, { "name": "itp_page_id", "comment": "(key to page.page_id)", "type": "bigint", "options": { "unsigned": true, "notnull": true } }, { "name": "itp_oldest_revision_id", "comment": "(key to revision.rev_id)", "type": "bigint", "options": { "unsigned": true, "notnull": true } }, { "name": "itp_newest_revision_id", "comment": "(key to revision.rev_id)", "type": "bigint", "options": { "unsigned": true, "notnull": true } } ], "indexes": [ { "name": "itp_items_id_page_id", "comment": "insertThreadItems()", "columns": [ "itp_items_id", "itp_page_id" ], "unique": true }, { "name": "itp_items_id_newest_revision_id", "comment": "findNewestRevisionsByName(), findNewestRevisionsById()", "columns": [ "itp_items_id", "itp_newest_revision_id" ], "unique": true } ], "pk": [ "itp_id" ] }, { "name": "discussiontools_item_revisions", "comment": "", "columns": [ { "name": "itr_id", "type": "integer", "options": { "autoincrement": true, "unsigned": true, "notnull": true } }, { "name": "itr_itemid_id", "comment": "(key to discussiontools_item_ids.itid_id)", "type": "integer", "options": { "notnull": true } }, { "name": "itr_revision_id", "comment": "(key to revision.rev_id)", "type": "bigint", "options": { "unsigned": true, "notnull": true } }, { "name": "itr_items_id", "comment": "(key to discussiontools_items.it_id)", "type": "integer", "options": { "notnull": true } }, { "name": "itr_parent_id", "comment": "(key to discussiontools_item_revisions.itr_id)", "type": "integer", "options": { "notnull": false } }, { "name": "itr_transcludedfrom", "comment": "Page where this item is transcluded from (null: not transcluded, 0: transcluded from unknown page) (key to page.page_id)", "type": "bigint", "options": { "unsigned": true, "notnull": false } }, { "name": "itr_level", "comment": "Indentation level (0 for headings, 1+ for comments)", "type": "mwtinyint", "options": { "notnull": true } }, { "name": "itr_headinglevel", "comment": "Heading level (1-6), or null for placeholder headings and comments", "type": "mwtinyint", "options": { "notnull": false } } ], "indexes": [ { "name": "itr_revision_id", "comment": "findThreadItemsInCurrentRevision()", "columns": [ "itr_revision_id" ], "unique": false }, { "name": "itr_itemid_id_revision_id", "comment": "findNewestRevisionsByName(), findNewestRevisionsById(), insertThreadItems()", "columns": [ "itr_itemid_id", "itr_revision_id" ], "unique": true } ], "pk": [ "itr_id" ] } ]