W3cubDocs

/Drupal 8

public function DatabaseQueue::releaseItem

public DatabaseQueue::releaseItem($item)

Releases an item that the worker could not process.

Another worker can come in and process it before the timeout expires.

Parameters

$item: The item returned by \Drupal\Core\Queue\QueueInterface::claimItem().

Return value

bool TRUE if the item has been released, FALSE otherwise.

Overrides QueueInterface::releaseItem

File

core/lib/Drupal/Core/Queue/DatabaseQueue.php, line 160

Class

DatabaseQueue
Default queue implementation.

Namespace

Drupal\Core\Queue

Code

public function releaseItem($item) {
  try {
    $update = $this->connection->update(static::TABLE_NAME)
      ->fields(array(
        'expire' => 0,
      ))
      ->condition('item_id', $item->item_id);
    return $update->execute();
  }
  catch (\Exception $e) {
    $this->catchException($e);
    // If the table doesn't exist we should consider the item released.
    return TRUE;
  }
}

© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/core!lib!Drupal!Core!Queue!DatabaseQueue.php/function/DatabaseQueue::releaseItem/8.1.x