MediaWiki REL1_34
JobQueueMemory Class Reference

Class to handle job queues stored in PHP memory for testing. More...

Inheritance diagram for JobQueueMemory:
Collaboration diagram for JobQueueMemory:

Public Member Functions

 __construct (array $params)
 
 getAllAcquiredJobs ()
 
 getAllQueuedJobs ()
 
 jobFromSpecInternal (IJobSpecification $spec)
 
- Public Member Functions inherited from JobQueue
 ack (RunnableJob $job)
 Acknowledge that a job was completed.
 
 batchPush (array $jobs, $flags=0)
 Push a batch of jobs into the queue.
 
 deduplicateRootJob (IJobSpecification $job)
 Register the "root job" of a given job into the queue for de-duplication.
 
 delayedJobsEnabled ()
 
 delete ()
 Deleted all unclaimed and delayed jobs from the queue.
 
 flushCaches ()
 Clear any process and persistent caches.
 
 getAbandonedCount ()
 Get the number of acquired jobs that can no longer be attempted.
 
 getAcquiredCount ()
 Get the number of acquired jobs (these are temporarily out of the queue).
 
 getAllAbandonedJobs ()
 Get an iterator to traverse over all abandoned jobs in this queue.
 
 getAllDelayedJobs ()
 Get an iterator to traverse over all delayed jobs in this queue.
 
 getCoalesceLocationInternal ()
 Do not use this function outside of JobQueue/JobQueueGroup.
 
 getDelayedCount ()
 Get the number of delayed jobs (these are temporarily out of the queue).
 
 getDomain ()
 
 getOrder ()
 
 getReadOnlyReason ()
 
 getSiblingQueueSizes (array $types)
 Check the size of each of the given queues.
 
 getSiblingQueuesWithJobs (array $types)
 Check whether each of the given queues are empty.
 
 getSize ()
 Get the number of available (unacquired, non-delayed) jobs in the queue.
 
 getType ()
 
 getWiki ()
 
 isEmpty ()
 Quickly check if the queue has no available (unacquired, non-delayed) jobs.
 
 pop ()
 Pop a job off of the queue.
 
 push ( $jobs, $flags=0)
 Push one or more jobs into the queue.
 
 waitForBackups ()
 Wait for any replica DBs or backup servers to catch up.
 

Protected Member Functions

 doAck (RunnableJob $job)
 
 doBatchPush (array $jobs, $flags)
 
 doDelete ()
 
 doGetAcquiredCount ()
 
 doGetSize ()
 
 doIsEmpty ()
 
 doPop ()
 
 optimalOrder ()
 
 supportedOrders ()
 
- Protected Member Functions inherited from JobQueue
 assertNotReadOnly ()
 
 doDeduplicateRootJob (IJobSpecification $job)
 
 doFlushCaches ()
 
 doGetAbandonedCount ()
 
 doGetDelayedCount ()
 
 doGetSiblingQueueSizes (array $types)
 
 doGetSiblingQueuesWithJobs (array $types)
 
 doIsRootJobOldDuplicate (IJobSpecification $job)
 
 doWaitForBackups ()
 
 factoryJob ( $command, $params)
 
 getRootJobCacheKey ( $signature)
 
 incrStats ( $key, $type, $delta=1)
 Call wfIncrStats() for the queue overall and for the queue type.
 
 isRootJobOldDuplicate (IJobSpecification $job)
 Check if the "root" job of a given job has been superseded by a newer one.
 
 supportsDelayedJobs ()
 Find out if delayed jobs are supported for configuration validation.
 

Static Protected Attributes

static array[] $data = []
 

Private Member Functions

getQueueData ( $field, $init=null)
 

Additional Inherited Members

- Static Public Member Functions inherited from JobQueue
static factory (array $params)
 Get a job queue object of the specified type.
 
- Public Attributes inherited from JobQueue
const QOS_ATOMIC = 1
 
const ROOTJOB_TTL = 2419200
 
- Protected Attributes inherited from JobQueue
int $claimTTL
 Time to live in seconds.
 
string $domain
 DB domain ID.
 
int $maxTries
 Maximum number of times to try a job.
 
string $order
 Job priority for pop()
 
string bool $readOnlyReason
 Read only rationale (or false if r/w)
 
StatsdDataFactoryInterface $stats
 
string $type
 Job type.
 
WANObjectCache $wanCache
 

Detailed Description

Class to handle job queues stored in PHP memory for testing.

JobQueueGroup does not remember every queue instance, so statically track it here

Since
1.27

Definition at line 31 of file JobQueueMemory.php.

Constructor & Destructor Documentation

◆ __construct()

JobQueueMemory::__construct ( array $params)
Parameters
array$params
  • type : A job type
  • domain : A DB domain ID
  • wanCache : An instance of WANObjectCache to use for caching [default: none]
  • stats : An instance of StatsdDataFactoryInterface [default: none]
  • claimTTL : Seconds a job can be claimed for exclusive execution [default: forever]
  • maxTries : Total times a job can be tried, assuming claims expire [default: 3]
  • order : Queue order, one of ("fifo", "timestamp", "random") [default: variable]
  • readOnlyReason : Mark the queue as read-only with this reason [default: false]
    Exceptions
    JobQueueError

Reimplemented from JobQueue.

Definition at line 35 of file JobQueueMemory.php.

Member Function Documentation

◆ doAck()

JobQueueMemory::doAck ( RunnableJob $job)
protected
See also
JobQueue::doAck
Parameters
RunnableJob$job

Reimplemented from JobQueue.

Definition at line 148 of file JobQueueMemory.php.

References $job, JobQueue\getAcquiredCount(), and getQueueData().

◆ doBatchPush()

JobQueueMemory::doBatchPush ( array $jobs,
$flags )
protected
See also
JobQueue::doBatchPush
Parameters
IJobSpecification[]$jobs
int$flags

Reimplemented from JobQueue.

Definition at line 47 of file JobQueueMemory.php.

References $job, getQueueData(), and serialize().

◆ doDelete()

JobQueueMemory::doDelete ( )
protected
See also
JobQueue::doDelete

Reimplemented from JobQueue.

Definition at line 160 of file JobQueueMemory.php.

◆ doGetAcquiredCount()

JobQueueMemory::doGetAcquiredCount ( )
protected
See also
JobQueue::doGetAcquiredCount
Returns
int

Reimplemented from JobQueue.

Definition at line 105 of file JobQueueMemory.php.

References getQueueData().

◆ doGetSize()

JobQueueMemory::doGetSize ( )
protected
See also
JobQueue::doGetSize
Returns
int

Reimplemented from JobQueue.

Definition at line 94 of file JobQueueMemory.php.

References getQueueData().

Referenced by doIsEmpty(), and doPop().

◆ doIsEmpty()

JobQueueMemory::doIsEmpty ( )
protected
See also
JobQueue::doIsEmpty
Returns
bool

Reimplemented from JobQueue.

Definition at line 85 of file JobQueueMemory.php.

References doGetSize().

◆ doPop()

JobQueueMemory::doPop ( )
protected
See also
JobQueue::doPop
Returns
RunnableJob|bool

Reimplemented from JobQueue.

Definition at line 116 of file JobQueueMemory.php.

References $job, doGetSize(), getQueueData(), and jobFromSpecInternal().

◆ getAllAcquiredJobs()

JobQueueMemory::getAllAcquiredJobs ( )
See also
JobQueue::getAllAcquiredJobs
Returns
Iterator of Job objects.

Reimplemented from JobQueue.

Definition at line 193 of file JobQueueMemory.php.

References getQueueData(), and jobFromSpecInternal().

◆ getAllQueuedJobs()

JobQueueMemory::getAllQueuedJobs ( )
See also
JobQueue::getAllQueuedJobs
Returns
Iterator of Job objects.

Reimplemented from JobQueue.

Definition at line 174 of file JobQueueMemory.php.

References getQueueData(), and jobFromSpecInternal().

◆ getQueueData()

& JobQueueMemory::getQueueData ( $field,
$init = null )
private
Parameters
string$field
mixed$init
Returns
mixed

Definition at line 221 of file JobQueueMemory.php.

References JobQueue\$domain, and JobQueue\$type.

Referenced by doAck(), doBatchPush(), doGetAcquiredCount(), doGetSize(), doPop(), getAllAcquiredJobs(), and getAllQueuedJobs().

◆ jobFromSpecInternal()

JobQueueMemory::jobFromSpecInternal ( IJobSpecification $spec)

◆ optimalOrder()

JobQueueMemory::optimalOrder ( )
protected
See also
JobQueue::optimalOrder
Returns
string

Reimplemented from JobQueue.

Definition at line 76 of file JobQueueMemory.php.

◆ supportedOrders()

JobQueueMemory::supportedOrders ( )
protected
See also
JobQueue::supportedOrders
Returns
string[]

Reimplemented from JobQueue.

Definition at line 67 of file JobQueueMemory.php.

Member Data Documentation

◆ $data

array [] JobQueueMemory::$data = []
staticprotected

Definition at line 33 of file JobQueueMemory.php.


The documentation for this class was generated from the following file: