Replaces usages of the deprecated pop() and insert()/insertBatch()
methods of Job class.
Change-Id: I5572c9e31a14bd660d7e3b9aa7792d0be9a26103
'pageStatus' => $pageStatus
);
$job = new EnotifNotifyJob( $title, $params );
'pageStatus' => $pageStatus
);
$job = new EnotifNotifyJob( $title, $params );
+ JobQueueGroup::singleton()->push( $job );
} else {
$this->actuallyNotifyOnPageChange( $editor, $title, $timestamp, $summary, $minorEdit, $oldid, $watchers, $pageStatus );
}
} else {
$this->actuallyNotifyOnPageChange( $editor, $title, $timestamp, $summary, $minorEdit, $oldid, $watchers, $pageStatus );
}
'redirTitle' => $redirTitle->getPrefixedDBkey() ) );
# Avoid excessive memory usage
if ( count( $jobs ) > 10000 ) {
'redirTitle' => $redirTitle->getPrefixedDBkey() ) );
# Avoid excessive memory usage
if ( count( $jobs ) > 10000 ) {
- Job::batchInsert( $jobs );
+ JobQueueGroup::singleton()->push( $jobs );
- Job::batchInsert( $jobs );
+ JobQueueGroup::singleton()->push( $jobs );
}
function __construct( $title, $params = false, $id = 0 ) {
}
function __construct( $title, $params = false, $id = 0 ) {
$params = $this->params;
$params['lives']--;
$job = new self( $this->title, $params );
$params = $this->params;
$params['lives']--;
$job = new self( $this->title, $params );
+ JobQueueGroup::singleton()->push( $job );
'sessionKey' => $sessionKey,
) );
$job->initializeSessionData();
'sessionKey' => $sessionKey,
) );
$job->initializeSessionData();
+ JobQueueGroup::singleton()->push( $job );
protected function queueJobs( $jobs, $dryrun = false ) {
$this->output( "Queuing batch of " . count( $jobs ) . " double redirects.\n" );
protected function queueJobs( $jobs, $dryrun = false ) {
$this->output( "Queuing batch of " . count( $jobs ) . " double redirects.\n" );
- Job::batchInsert( $dryrun ? array() : $jobs );
+ JobQueueGroup::singleton()->push( $dryrun ? array() : $jobs );
* Ensure that the job queue is empty before continuing
*/
public function testClearQueue() {
* Ensure that the job queue is empty before continuing
*/
public function testClearQueue() {
+ $job = JobQueueGroup::singleton()->pop();
+ $job = JobQueueGroup::singleton()->pop();
}
$this->assertFalse( $job );
}
}
$this->assertFalse( $job );
}
$this->assertEquals( $data[0]['upload']['result'], 'Queued', 'Queued upload' );
$this->assertEquals( $data[0]['upload']['result'], 'Queued', 'Queued upload' );
+ $job = JobQueueGroup::singleton()->pop();
$this->assertThat( $job, $this->isInstanceOf( 'UploadFromUrlJob' ), 'Queued upload inserted' );
}
$this->assertThat( $job, $this->isInstanceOf( 'UploadFromUrlJob' ), 'Queued upload inserted' );
}
public function testSyncDownload( $data ) {
$token = $this->user->getEditToken();
public function testSyncDownload( $data ) {
$token = $this->user->getEditToken();
+ $job = JobQueueGroup::singleton()->pop();
$this->assertFalse( $job, 'Starting with an empty jobqueue' );
$this->user->addGroup( 'users' );
$this->assertFalse( $job, 'Starting with an empty jobqueue' );
$this->user->addGroup( 'users' );
'token' => $token,
), $data );
'token' => $token,
), $data );
+ $job = JobQueueGroup::singleton()->pop();
$this->assertFalse( $job );
$this->assertEquals( 'Success', $data[0]['upload']['result'] );
$this->assertFalse( $job );
$this->assertEquals( 'Success', $data[0]['upload']['result'] );
'ignorewarnings' => 1,
) );
'ignorewarnings' => 1,
) );
+ $job = JobQueueGroup::singleton()->pop();
$this->assertEquals( 'UploadFromUrlJob', get_class( $job ) );
$job->run();
$this->assertEquals( 'UploadFromUrlJob', get_class( $job ) );
$job->run();
}
$this->assertTrue( $exception );
}
$this->assertTrue( $exception );
+ $job = JobQueueGroup::singleton()->pop();
$this->assertFalse( $job );
return;
$this->assertFalse( $job );
return;
$this->assertTrue( isset( $data[0]['upload']['statuskey'] ) );
$statusKey = $data[0]['upload']['statuskey'];
$this->assertTrue( isset( $data[0]['upload']['statuskey'] ) );
$statusKey = $data[0]['upload']['statuskey'];
+ $job = JobQueueGroup::singleton()->pop();
$this->assertEquals( 'UploadFromUrlJob', get_class( $job ) );
$status = $job->run();
$this->assertEquals( 'UploadFromUrlJob', get_class( $job ) );
$status = $job->run();