Tribe__Process__Queue::is_stuck( string $queue_id )
Whether a queue process is stuck or not.
Contents
A queue process that has not been doing anything for an amount of time is considered "stuck".
Parameters
- $queue_id
-
(string) (Required) The queue process unique identifier.
Return
(bool)
Source
File: src/Tribe/Process/Queue.php
public static function is_stuck( $queue_id ) {
$queue_status = self::get_status_of( $queue_id );
$is_stuck = false;
/**
* Filters the maximum allowed time a queue process can go without updates
* before being considered stuck.
*
* @since 4.7.18
*
* @param int $time_limit A value in seconds, defaults to 5'.
*/
$limit = (float) apply_filters( 'tribe_process_queue_time_limit', 300 );
if ( ! empty( $queue_status['last_update'] ) && is_numeric( $queue_status['last_update'] ) ) {
$is_stuck = time() - (int) $queue_status['last_update'] > $limit;
} else {
$queue_status['last_update'] = time();
set_transient( $queue_id . '_meta', $queue_status->to_array(), DAY_IN_SECONDS );
}
/**
* Filters whether a queue is considered "stuck" or not.
*
* @since 4.7.18
*
* @param bool $is_stuck
* @param string $queue_id
* @param Tribe__Data $queue_status
*/
return apply_filters( 'tribe_process_queue_is_stuck', $is_stuck, $queue_id, $queue_status );
}
Changelog
| Version | Description |
|---|---|
| 4.7.18 | Introduced. |