From d8c2a618e559a61ae8e3ae2507eeef77b0173e4f Mon Sep 17 00:00:00 2001 From: Aaron Schulz Date: Mon, 25 Feb 2013 09:55:32 -0800 Subject: [PATCH] Made runJobs.php wait for slave lag. * Relying on waitForBackups() alone will not work with non DB queues. Change-Id: I2124c5cd11a70d183cfde00ad21d6642a3a0ee9e --- maintenance/runJobs.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/maintenance/runJobs.php b/maintenance/runJobs.php index f9557ce65e..714bb84845 100644 --- a/maintenance/runJobs.php +++ b/maintenance/runJobs.php @@ -82,6 +82,7 @@ class RunJobs extends Maintenance { $this->runJobsLog( "Executed $count periodic queue task(s)." ); } + $lastTime = time(); do { $job = ( $type === false ) ? $group->pop( JobQueueGroup::TYPE_DEFAULT, JobQueueGroup::USE_CACHE ) @@ -118,8 +119,13 @@ class RunJobs extends Maintenance { break; } - // Don't let any slaves/backups fall behind... + // Don't let any queue slaves/backups fall behind $group->get( $job->getType() )->waitForBackups(); + // Don't let any of the main DB slaves get backed up + $timePassed = time() - $lastTime; + if ( $timePassed >= 5 || $timePassed < 0 ) { + wfWaitForSlaves(); + } } } while ( $job ); // stop when there are no jobs } -- 2.20.1