* Mostly reverted r41081 and related. Although the motivation (to save a query) is...
authorTim Starling <tstarling@users.mediawiki.org>
Mon, 16 Feb 2009 14:26:34 +0000 (14:26 +0000)
committerTim Starling <tstarling@users.mediawiki.org>
Mon, 16 Feb 2009 14:26:34 +0000 (14:26 +0000)
commit4b66381cbf509a3d2043021a857ce0a5c779dc49
tree8d8da97a24c90cd7fc6d31e9527f703ff121047b
parenta44e9c9b9893740ba6ee39ceccaf9676274210b8
* Mostly reverted r41081 and related. Although the motivation (to save a query) is noble, it's a complex special case relying on subtle inter-module effects, making the code quite unclear and the performance advantage hard to reproduce in new code.
* r41081 was causing the job queue to be flooded with tiny htmlCacheUpdate jobs which were less than the batch size and so, according to the original logic, should have been done immediately. This was causing template updates to be delayed even when the template has few backlinks. This is fixed.
* Introduced a shared cache called BacklinkCache with the main purpose of sharing data from these backlink queries, thus recovering the performance of r41081.
* Refactored backlink partitioning code, which in r40741 was copied from HTMLCacheUpdate to LinksUpdate with a bug intact. The bug caused every htmlCacheUpdate or refreshLinks2 job to be split into at least two pieces even when number of rows is less than the batch size.
* Fixed a bug from r40741 causing refreshLinks2 jobs with end=false to be ignored.
* Made SquidUpdate::newFromTitles() accept a TitleArray
RELEASE-NOTES
includes/Article.php
includes/AutoLoader.php
includes/BacklinkCache.php [new file with mode: 0644]
includes/HTMLCacheUpdate.php
includes/Import.php
includes/LinksUpdate.php
includes/RefreshLinksJob.php
includes/SquidUpdate.php
includes/Title.php