Merge "Make DBAccessBase use DBConnRef, rename $wiki, and hide getLoadBalancer()"
[lhc/web/wiklou.git] / includes / jobqueue / JobQueueGroup.php
index 4bac304..7bc97d8 100644 (file)
@@ -31,7 +31,7 @@ class JobQueueGroup {
        /** @var JobQueueGroup[] */
        protected static $instances = [];
 
-       /** @var ProcessCacheLRU */
+       /** @var MapCacheLRU */
        protected $cache;
 
        /** @var string Wiki domain ID */
@@ -121,7 +121,6 @@ class JobQueueGroup {
                $services = MediaWikiServices::getInstance();
                $conf['stats'] = $services->getStatsdDataFactory();
                $conf['wanCache'] = $services->getMainWANObjectCache();
-               $conf['stash'] = $services->getMainObjectStash();
 
                return JobQueue::factory( $conf );
        }
@@ -187,10 +186,6 @@ class JobQueueGroup {
        /**
         * Buffer jobs for insertion via push() or call it now if in CLI mode
         *
-        * Note that pushLazyJobs() is registered as a deferred update just before
-        * DeferredUpdates::doUpdates() in MediaWiki and JobRunner classes in order
-        * to be executed as the very last deferred update (T100085, T154425).
-        *
         * @param IJobSpecification|IJobSpecification[] $jobs A single Job or a list of Jobs
         * @return void
         * @since 1.26
@@ -214,17 +209,6 @@ class JobQueueGroup {
                DeferredUpdates::addUpdate( new JobQueueEnqueueUpdate( $this->domain, $jobs ) );
        }
 
-       /**
-        * Push all jobs buffered via lazyPush() into their respective queues
-        *
-        * @return void
-        * @since 1.26
-        * @deprecated Since 1.33 Not needed anymore
-        */
-       public static function pushLazyJobs() {
-               wfDeprecated( __METHOD__, '1.33' );
-       }
-
        /**
         * Pop a job off one of the job queues
         *
@@ -234,7 +218,7 @@ class JobQueueGroup {
         * @param int|string $qtype JobQueueGroup::TYPE_* constant or job type string
         * @param int $flags Bitfield of JobQueueGroup::USE_* constants
         * @param array $blacklist List of job types to ignore
-        * @return Job|bool Returns false on failure
+        * @return RunnableJob|bool Returns false on failure
         */
        public function pop( $qtype = self::TYPE_DEFAULT, $flags = 0, array $blacklist = [] ) {
                global $wgJobClasses;
@@ -286,10 +270,10 @@ class JobQueueGroup {
        /**
         * Acknowledge that a job was completed
         *
-        * @param Job $job
+        * @param RunnableJob $job
         * @return void
         */
-       public function ack( Job $job ) {
+       public function ack( RunnableJob $job ) {
                $this->get( $job->getType() )->ack( $job );
        }
 
@@ -297,10 +281,10 @@ class JobQueueGroup {
         * Register the "root job" of a given job into the queue for de-duplication.
         * This should only be called right *after* all the new jobs have been inserted.
         *
-        * @param Job $job
+        * @param RunnableJob $job
         * @return bool
         */
-       public function deduplicateRootJob( Job $job ) {
+       public function deduplicateRootJob( RunnableJob $job ) {
                return $this->get( $job->getType() )->deduplicateRootJob( $job );
        }
 
@@ -413,7 +397,8 @@ class JobQueueGroup {
        }
 
        /**
-        * @return JobQueue[]
+        * @return array[]
+        * @phan-return array<string,array{queue:JobQueue,types:array<string,class-string>}>
         */
        protected function getCoalescedQueues() {
                global $wgJobTypeConf;