Last modified: 2011-11-25 07:12:47 UTC

Wikimedia Bugzilla is closed!

Wikimedia migrated from Bugzilla to Phabricator. Bug reports are handled in Wikimedia Phabricator.
This static website is read-only and for historical purposes. It is not possible to log in and except for displaying bug reports and their history, links might be broken. See T9311, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 7311 - Create a two-link QueryCache table
Create a two-link QueryCache table
Status: NEW
Product: MediaWiki
Classification: Unclassified
Database (Other open bugs)
unspecified
PC Windows XP
: Low enhancement with 2 votes (vote)
: ---
Assigned To: Nobody - You can work on this!
http://meta.wikimedia.org/wiki/Propos...
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2006-09-13 13:49 UTC by Yuri Astrakhan
Modified: 2011-11-25 07:12 UTC (History)
1 user (show)

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Attachments

Description Yuri Astrakhan 2006-09-13 13:49:31 UTC
All proposed schema changes are at
http://meta.wikimedia.org/wiki/Proposed_Database_Schema_Changes

There is a need for some special pages to cache two links per line instead of
one. Examples include [[Special:Disambiguations]], [[Special:BrokenRedirects]],
[[Special:DoubleRedirects]], and possibly any other that are currently not
implemented because of the caching limitations. The table structure will be
identical to querycache table, except that it will have two additional fields
(namespace2 & title2), plus it might have a number of additional indexes to
facilitate better sorting.

CREATE TABLE  `querycache2` (
 `qc2_type` char(32) NOT NULL,
 `qc2_value` int(5) unsigned NOT NULL default '0',
 `qc2_namespace` int(11) NOT NULL default '0',
 `qc2_title` char(255) character set latin1 collate latin1_bin NOT NULL default ,
 `qc2_namespace2` int(11) NOT NULL default '0',
 `qc2_title2` char(255) character set latin1 collate latin1_bin NOT NULL default ,
 KEY `qc2_value` (`qc2_type`,`qc2_value`),
 KEY `qc2_title` (`qc2_type`,`qc2_namespace`,`qc2_title`),
 KEY `qc2_title2` (`qc2_type`,`qc2_namespace2`,`qc2_title2`)
)
Comment 1 Yuri Astrakhan 2006-11-13 19:59:49 UTC
The table has been created in the databases, so the only thing left is to change
the special pages to start using `querycache2` table instead of `querycache`.
Comment 2 Rob Church 2006-11-13 20:03:54 UTC
If this table is to replace querycache, then it should probably just be named
querycache; the 2 can be dropped. Obviously this will need some co-ordination
and a bit of work in the update script.
Comment 3 Yuri Astrakhan 2006-11-14 00:37:44 UTC
We could delete querycache2 and simply add one more ns+title pair to the
querycache table. The positive would be a more consolidated data structure and a
much simpler common code for the special pages, but the negative is the wasted
space for all the queries that do not need a second title.
Comment 4 Rob Church 2006-11-14 08:46:07 UTC
I like the positives, though. Two tables for very similar purposes is taking the
p***.
Comment 5 Chad H. 2009-04-10 14:10:38 UTC
Fwiw, we've been using querycache and querycachetwo for several years now. Are there still any intentions to combine these into one table eventually?

Note You need to log in before you can comment on or make changes to this bug.


Navigation
Links