Last modified: 2012-05-22 16:38:40 UTC
See URL, it jumps from r50013 reverted Workaround for undefined varible access related to r49941 -- $this->mIsFirst ... brion 21:30, 28 April 2009 to r39913 old Localisation updates for extensions messages from Betawiki (2008-08-24 21:20 ... siebrand 21:30, 24 August 2008 Skipping revisions such as r49890 Looking at the git repository, there are 494 revisions inbetween, not showed in CodeReview: $ git log 9def0c2b916e2b49291c423ab6ac31f81d05c325^...c4c44e2b32369e2f571cc87aaaae839ac76a9813 --format=oneline | wc -l 494
Locally: Total number of results: 1,628 mysql> explain select count(*) from mw_code_paths +----+-------------+---------------+-------+---------------+-----------+---------+------+---------+-------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+---------------+-------+---------------+-----------+---------+------+---------+-------------+ | 1 | SIMPLE | mw_code_paths | index | NULL | repo_path | 261 | NULL | 1588190 | Using index | +----+-------------+---------------+-------+---------------+-----------+---------+------+---------+-------------+ 1 row in set (0.02 sec) mysql> select count(*) from mw_code_paths +----------+ | count(*) | +----------+ | 1463769 | +----------+ 1 row in set (10.46 sec) mysql> explain select count(*) from mw_code_paths where cp_repo_id = 1 AND cp_path = '/trunk/extensions/AbuseFilter'; +----+-------------+---------------+------+-------------------+-----------+---------+-------------+------+--------------------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+---------------+------+-------------------+-----------+---------+-------------+------+--------------------------+ | 1 | SIMPLE | mw_code_paths | ref | PRIMARY,repo_path | repo_path | 261 | const,const | 1627 | Using where; Using index | +----+-------------+---------------+------+-------------------+-----------+---------+-------------+------+--------------------------+ 1 row in set (0.03 sec) mysql> select count(*) from mw_code_paths where cp_repo_id = 1 AND cp_path = '/trunk/extensions/AbuseFilter'; +----------+ | count(*) | +----------+ | 1628 | +----------+ 1 row in set (0.01 sec) MW.org: Total number of results: 1,134 mysql> explain select count(*) from code_paths; +----+-------------+------------+-------+---------------+-----------+---------+------+---------+-------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+------------+-------+---------------+-----------+---------+------+---------+-------------+ | 1 | SIMPLE | code_paths | index | NULL | repo_path | 261 | NULL | 1677673 | Using index | +----+-------------+------------+-------+---------------+-----------+---------+------+---------+-------------+ 1 row in set (0.00 sec) mysql> select count(*) from code_paths; +----------+ | count(*) | +----------+ | 1576529 | +----------+ 1 row in set (4.02 sec) mysql> explain select count(*) from code_paths where cp_repo_id = 1 AND cp_path = '/trunk/extensions/AbuseFilter'; +----+-------------+------------+------+-------------------+-----------+---------+-------------+------+--------------------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+------------+------+-------------------+-----------+---------+-------------+------+--------------------------+ | 1 | SIMPLE | code_paths | ref | PRIMARY,repo_path | repo_path | 261 | const,const | 2498 | Using where; Using index | +----+-------------+------------+------+-------------------+-----------+---------+-------------+------+--------------------------+ 1 row in set (0.00 sec) mysql> select count(*) from code_paths where cp_repo_id = 1 AND cp_path = '/trunk/extensions/AbuseFilter'; +----------+ | count(*) | +----------+ | 1628 | +----------+ 1 row in set (0.00 sec) Difference is 494.. Set of database rows (for AF at least!) is the same on the 2 copies. The count being what should be found.
SQL query from local, modified and ran on cluster: mysql> SELECT /* CodeRevisionListView::getRevCount Reedy */ COUNT( DISTINCT cr_id ) AS rev_count FROM `code_paths` INNER JOIN `code_rev` ON ((cr_repo_id = cp_repo_id AND cr_id = cp_rev_id)) LEFT JOIN `code_comment` ON ((cc_repo_id = cp_repo_id AND cc_rev_id = cp_rev_id)) WHERE cp_repo_id = '1' AND cp_path = '/trunk/extensions/AbuseFilter' LIMIT 1; +-----------+ | rev_count | +-----------+ | 1628 | +-----------+ 1 row in set (4.73 sec)
It seems fixed now: https://www.mediawiki.org/w/index.php?path=%2Ftrunk%2Fextensions%2FAbuseFilter&title=Special%3ACode%2FMediaWiki Total number of results: 1,628
Weird, so it fixed itself? :S
(In reply to comment #4) > Weird, so it fixed itself? :S Seemingly. It's almost like there was an incomplete query run and it was cached somewhere. But I'm sure we don't cache that stuff...