fix lag detection - do not assume that second 'system user' line gives that value...
[mediawiki.git] / maintenance / archives / patch-categorylinks.sql
blob53c82fc0db9ec16832e8af0029f800d7d5d8753c
1 --
2 -- Track category inclusions *used inline*
3 -- This tracks a single level of category membership
4 -- (folksonomic tagging, really).
5 --
6 CREATE TABLE /*$wgDBprefix*/categorylinks (
7   -- Key to page_id of the page defined as a category member.
8   cl_from int(8) unsigned NOT NULL default '0',
9   
10   -- Name of the category.
11   -- This is also the page_title of the category's description page;
12   -- all such pages are in namespace 14 (NS_CATEGORY).
13   cl_to varchar(255) binary NOT NULL default '',
15   -- The title of the linking page, or an optional override
16   -- to determine sort order. Sorting is by binary order, which
17   -- isn't always ideal, but collations seem to be an exciting
18   -- and dangerous new world in MySQL...
19   --
20   -- For MySQL 4.1+ with charset set to utf8, the sort key *index*
21   -- needs cut to be smaller than 1024 bytes (at 3 bytes per char).
22   -- To sort properly on the shorter key, this field needs to be
23   -- the same shortness.
24   cl_sortkey varchar(86) binary NOT NULL default '',
25   
26   -- This isn't really used at present. Provided for an optional
27   -- sorting method by approximate addition time.
28   cl_timestamp timestamp NOT NULL,
29   
30   UNIQUE KEY cl_from(cl_from,cl_to),
31   
32   -- This key is trouble. It's incomplete, AND it's too big
33   -- when collation is set to UTF-8. Bleeeacch!
34   KEY cl_sortkey(cl_to,cl_sortkey),
35   
36   -- Not really used?
37   KEY cl_timestamp(cl_to,cl_timestamp)
39 ) TYPE=InnoDB;