From f43a74aa593f82b45aa112dd662c8d06f4181ea0 Mon Sep 17 00:00:00 2001 From: Aaron Schulz Date: Fri, 3 Jul 2015 11:11:41 -0700 Subject: [PATCH] Made recent changes purge jobs bail more aggressively * This should handle unusual spikes better Bug: T104670 Change-Id: I562f74d0871b192f1dfb2ac03ef2a4a87cecf0e2 --- includes/jobqueue/jobs/RecentChangesUpdateJob.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/includes/jobqueue/jobs/RecentChangesUpdateJob.php b/includes/jobqueue/jobs/RecentChangesUpdateJob.php index e86d9147e2..d6fa26b81f 100644 --- a/includes/jobqueue/jobs/RecentChangesUpdateJob.php +++ b/includes/jobqueue/jobs/RecentChangesUpdateJob.php @@ -75,11 +75,13 @@ class RecentChangesUpdateJob extends Job { $lockKey = wfWikiID() . ':recentchanges-prune'; $dbw = wfGetDB( DB_MASTER ); - if ( !$dbw->lock( $lockKey, __METHOD__, 1 ) ) { + if ( !$dbw->lockIsFree( $lockKey, __METHOD__ ) + || !$dbw->lock( $lockKey, __METHOD__, 1 ) + ) { return; // already in progress } - $batchSize = 100; // Avoid slave lag + $batchSize = 100; // avoid slave lag $cutoff = $dbw->timestamp( time() - $wgRCMaxAge ); do { $rcIds = $dbw->selectFieldValues( 'recentchanges', -- 2.20.1