jenkins-bot has submitted this change and it was merged.

Change subject: Make refreshLinksJob explicitly check the cache rev ID
......................................................................


Make refreshLinksJob explicitly check the cache rev ID

This is needed if the $useOutdated behavior of ParserCache
is modified per Ibd111bed203dd.

Bug: T133659
Change-Id: I70806dffba8af255d7cdad7663132b58479f63e3
---
M includes/jobqueue/jobs/RefreshLinksJob.php
1 file changed, 8 insertions(+), 4 deletions(-)

Approvals:
  Anomie: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/includes/jobqueue/jobs/RefreshLinksJob.php 
b/includes/jobqueue/jobs/RefreshLinksJob.php
index 15ee980..927cafd 100644
--- a/includes/jobqueue/jobs/RefreshLinksJob.php
+++ b/includes/jobqueue/jobs/RefreshLinksJob.php
@@ -185,17 +185,21 @@
                        }
 
                        if ( $page->getTouched() >= $skewedTimestamp || 
$opportunistic ) {
-                               // Something bumped page_touched since this job 
was made
-                               // or the cache is otherwise suspected to be 
up-to-date
+                               // Something bumped page_touched since this job 
was made or the cache is
+                               // otherwise suspected to be up-to-date. As 
long as the cache rev ID matches
+                               // and it reflects the job's triggering change, 
then it is usable.
                                $parserOutput = 
ParserCache::singleton()->getDirty( $page, $parserOptions );
-                               if ( $parserOutput && 
$parserOutput->getCacheTime() < $skewedTimestamp ) {
+                               if ( !$parserOutput
+                                       || $parserOutput->getCacheRevisionId() 
!= $revision->getId()
+                                       || $parserOutput->getCacheTime() < 
$skewedTimestamp
+                               ) {
                                        $parserOutput = false; // too stale
                                }
                        }
                }
 
                // Fetch the current revision and parse it if necessary...
-               if ( $parserOutput == false ) {
+               if ( !$parserOutput ) {
                        $start = microtime( true );
                        // Revision ID must be passed to the parser output to 
get revision variables correct
                        $parserOutput = $content->getParserOutput(

-- 
To view, visit https://gerrit.wikimedia.org/r/285449
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I70806dffba8af255d7cdad7663132b58479f63e3
Gerrit-PatchSet: 3
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Aaron Schulz <[email protected]>
Gerrit-Reviewer: Anomie <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to