Merge "Made executeReadyPeriodicTasks avoid using merge() when not needed"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Wed, 4 Jun 2014 22:42:57 +0000 (22:42 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Wed, 4 Jun 2014 22:42:57 +0000 (22:42 +0000)
includes/jobqueue/aggregator/JobQueueAggregatorRedis.php

index 2aec3c9..896aac4 100644 (file)
@@ -75,7 +75,10 @@ class JobQueueAggregatorRedis extends JobQueueAggregator {
                        return false;
                }
                try {
+                       $conn->multi( Redis::PIPELINE );
+                       $conn->hSetNx( $this->getQueueTypesKey(), $type, 'enabled' );
                        $conn->hSet( $this->getReadyQueueKey(), $this->encQueueName( $type, $wiki ), time() );
+                       $conn->exec();
 
                        return true;
                } catch ( RedisException $e ) {
@@ -185,6 +188,13 @@ class JobQueueAggregatorRedis extends JobQueueAggregator {
                return "jobqueue:aggregator:h-ready-queues:v1"; // global
        }
 
+       /**
+        * @return string
+        */
+       private function getQueueTypesKey() {
+               return "jobqueue:aggregator:h-queue-types:v1"; // global
+       }
+
        /**
         * @param string $type
         * @param string $wiki