https://www.mediawiki.org/wiki/Special:Code/MediaWiki/113206
Revision: 113206
Author: catrope
Date: 2012-03-07 01:03:55 +0000 (Wed, 07 Mar 2012)
Log Message:
-----------
Create a unique index on afi_name, and force an index on the logging query
Modified Paths:
--------------
trunk/extensions/ArticleFeedbackv5/api/ApiViewActivityArticleFeedbackv5.php
trunk/extensions/ArticleFeedbackv5/sql/ArticleFeedbackv5.sql
Modified:
trunk/extensions/ArticleFeedbackv5/api/ApiViewActivityArticleFeedbackv5.php
===================================================================
--- trunk/extensions/ArticleFeedbackv5/api/ApiViewActivityArticleFeedbackv5.php
2012-03-07 00:37:54 UTC (rev 113205)
+++ trunk/extensions/ArticleFeedbackv5/api/ApiViewActivityArticleFeedbackv5.php
2012-03-07 01:03:55 UTC (rev 113206)
@@ -266,7 +266,13 @@
__METHOD__,
array(
'LIMIT' => $limit + 1,
- 'ORDER BY' => 'log_timestamp DESC'
+ 'ORDER BY' => 'log_timestamp DESC',
+ // Force the page_time index (on _namespace,
_title, _timestamp)
+ // We don't expect many if any rows for
Special:ArticleFeedbackv5/foo that
+ // don't match log_type='articlefeedbackv5' ,
so we can afford to have that
+ // clause be unindexed. The alternative is to
have the log_type clause be indexed
+ // and the namespace/title clauses unindexed,
that would be bad.
+ 'USE INDEX' => 'page_time'
)
);
Modified: trunk/extensions/ArticleFeedbackv5/sql/ArticleFeedbackv5.sql
===================================================================
--- trunk/extensions/ArticleFeedbackv5/sql/ArticleFeedbackv5.sql
2012-03-07 00:37:54 UTC (rev 113205)
+++ trunk/extensions/ArticleFeedbackv5/sql/ArticleFeedbackv5.sql
2012-03-07 01:03:55 UTC (rev 113206)
@@ -71,7 +71,7 @@
CREATE INDEX /*i*/article_feedback_timestamp ON /*_*/aft_article_feedback
(af_created);
CREATE INDEX /*i*/af_page_id ON /*_*/aft_article_feedback (af_page_id,
af_created);
CREATE INDEX /*i*/af_page_feedback_id ON /*_*/aft_article_feedback
(af_page_id, af_id);
-CREATE INDEX /*_*/af_page_net_helpfulness_af_id ON /*_*/aft_article_feedback
(af_page_id, af_net_helpfulness, af_id);
+CREATE INDEX /*i*/af_page_net_helpfulness_af_id ON /*_*/aft_article_feedback
(af_page_id, af_net_helpfulness, af_id);
-- Allows for organizing fields into fieldsets, for reporting or rendering.
-- A group is just a name and an ID.
@@ -93,6 +93,7 @@
-- Which 'bucket' this field should be rendered in.
afi_bucket_id integer unsigned NOT NULL
) /*$wgDBTableOptions*/;
+CREATE UNIQUE INDEX /*i*/afi_name ON /*_*/aft_article_field (afi_name);
-- Stores options for multi-value feedback fields (ie, select boxes)
CREATE TABLE IF NOT EXISTS /*_*/aft_article_field_option (
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs