Merge "Reduced some master queries via Revision::READ_NORMAL."

This commit is contained in:
Catrope 2012-08-28 23:53:26 +00:00 committed by Gerrit Code Review
commit cddcb353fb
4 changed files with 11 additions and 10 deletions

View file

@ -1288,18 +1288,19 @@ abstract class Skin extends ContextSource {
$ntl = '';
if ( count( $newtalks ) == 1 && $newtalks[0]['wiki'] === wfWikiID() ) {
$userTalkTitle = $this->getUser()->getTalkPage();
$uTalkTitle = $this->getUser()->getTalkPage();
if ( !$userTalkTitle->equals( $out->getTitle() ) ) {
if ( !$uTalkTitle->equals( $out->getTitle() ) ) {
$lastSeenRev = isset( $newtalks[0]['rev'] ) ? $newtalks[0]['rev'] : null;
$nofAuthors = 0;
if ( $lastSeenRev !== null ) {
$plural = true; // Default if we have a last seen revision: if unknown, use plural
$latestRev = Revision::newFromTitle ($userTalkTitle);
$latestRev = Revision::newFromTitle( $uTalkTitle, false, Revision::READ_NORMAL );
if ( $latestRev !== null ) {
// Singular if only 1 unseen revision, plural if several unseen revisions.
$plural = $latestRev->getParentId() !== $lastSeenRev->getId();
$nofAuthors = $userTalkTitle->countAuthorsBetween( $lastSeenRev, $latestRev, 10, 'include_new' );
$nofAuthors = $uTalkTitle->countAuthorsBetween(
$lastSeenRev, $latestRev, 10, 'include_new' );
}
} else {
// Singular if no revision -> diff link will show latest change only in any case
@ -1310,14 +1311,14 @@ abstract class Skin extends ContextSource {
// the number of revisions or authors is not necessarily the same as the number of
// "messages".
$newMessagesLink = Linker::linkKnown(
$userTalkTitle,
$uTalkTitle,
$this->msg( 'newmessageslinkplural' )->params( $plural )->escaped(),
array(),
array( 'redirect' => 'no' )
);
$newMessagesDiffLink = Linker::linkKnown(
$userTalkTitle,
$uTalkTitle,
$this->msg( 'newmessagesdifflinkplural' )->params( $plural )->escaped(),
array(),
$lastSeenRev !== null

View file

@ -55,7 +55,7 @@ class RefreshLinksJob extends Job {
wfGetLB()->waitFor( $this->params['masterPos'] );
}
$revision = Revision::newFromTitle( $this->title, 0, Revision::READ_NORMAL );
$revision = Revision::newFromTitle( $this->title, false, Revision::READ_NORMAL );
if ( !$revision ) {
$this->error = 'refreshLinks: Article not found "' .
$this->title->getPrefixedDBkey() . '"';
@ -185,7 +185,7 @@ class RefreshLinksJob2 extends Job {
}
# Re-parse each page that transcludes this page and update their tracking links...
foreach ( $titles as $title ) {
$revision = Revision::newFromTitle( $title, 0, Revision::READ_NORMAL );
$revision = Revision::newFromTitle( $title, false, Revision::READ_NORMAL );
if ( !$revision ) {
$this->error = 'refreshLinks: Article not found "' .
$title->getPrefixedDBkey() . '"';

View file

@ -661,7 +661,7 @@ class CoreParserFunctions {
if( isset( $cache[$page] ) ) {
$length = $cache[$page];
} elseif( $parser->incrementExpensiveFunctionCount() ) {
$rev = Revision::newFromTitle( $title );
$rev = Revision::newFromTitle( $title, false, Revision::READ_NORMAL );
$id = $rev ? $rev->getPage() : 0;
$length = $cache[$page] = $rev ? $rev->getSize() : 0;

View file

@ -3565,7 +3565,7 @@ class Parser {
# Get the revision
$rev = $id
? Revision::newFromId( $id )
: Revision::newFromTitle( $title, 0, Revision::READ_NORMAL );
: Revision::newFromTitle( $title, false, Revision::READ_NORMAL );
$rev_id = $rev ? $rev->getId() : 0;
# If there is no current revision, there is no page
if ( $id === false && !$rev ) {