https://bugzilla.wikimedia.org/show_bug.cgi?id=57175

       Web browser: ---
            Bug ID: 57175
           Summary: SpecialRecentChanges::doMainQuery query needs tuning
           Product: MediaWiki
           Version: 1.21.3
          Hardware: All
                OS: All
            Status: NEW
          Severity: major
          Priority: Unprioritized
         Component: Database
          Assignee: wikibugs-l@lists.wikimedia.org
          Reporter: sprin...@wikimedia.org
    Classification: Unclassified
   Mobile Platform: ---

The following query is much slower on MariaDB enwiki with the FORCE INDEX than
without it:

SELECT /* SpecialRecentChanges::doMainQuery */ 
rc_id,rc_timestamp,rc_cur_time,rc_user,rc_user_text,rc_namespace,rc_title,rc_comment,rc_minor,rc_bot,rc_new,rc_cur_id,rc_this_oldid,rc_last_oldid,rc_type,rc_source,rc_patrolled,rc_ip,rc_old_len,rc_new_len,rc_deleted,rc_logid,rc_log_type,rc_log_action,rc_params,wl_user,wl_notificationtimestamp,ts_tags,fp_stable,fp_pending_since
 FROM `recentchanges` FORCE INDEX (rc_timestamp) LEFT JOIN `watchlist` ON
(wl_user = '12744321' AND (wl_title=rc_title) AND (wl_namespace=rc_namespace))
LEFT JOIN `tag_summary` ON ((ts_rc_id=rc_id)) LEFT JOIN `flaggedpages` ON
((fp_page_id = rc_cur_id))  WHERE (rc_timestamp >= '20131018000000') AND rc_bot
= '0' AND (rc_namespace = '828') AND (rc_type != 5) AND rc_new IN ('0','1')  
ORDER BY rc_timestamp DESC LIMIT 500

With force: > 1 minute, a slow range scan on rc_timestamp, ~2 million rows.

Without force: < 3 seconds, a fast ref lookup on rc_namespace_title with cheap
filesort, ~1000 rows.

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are on the CC list for the bug.
_______________________________________________
Wikibugs-l mailing list
Wikibugs-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l

Reply via email to