Queue Cleaner
Categories
Component ID
Component name
Component type
Maintenance status
Development status
Component security advisory coverage
Component created
Component changed
Component body
This utility module removes all the tasks that older than a given time from 'queue' DB table.
Together with Ultimate Cron and its 'lease time' option it may help to mitigate running of non-idempotent queue tasks multiple times. To do so, set 'lease time' for the particular Queue Job (via Ultimate Cron interface) e.g. to 2 days and the Queue Cleaner timeout to 1 day. If cron is configured properly the queued task will not be fired more than once (it will have been removed from 'queue' before it'll be claimed by Drupal one again).
Learn more about how Drupal Queue works and think why it might be important for you:
https://api.drupal.org/api/drupal/modules!system!system.queue.inc/group/...
https://api.drupal.org/api/drupal/modules%21system%21system.queue.inc/fu...
Potential improvements:
- Add a configuration option - a list of task patterns that should be removed (e.g. only rules_scheduler_* queue tasks). For the time being this module removes ALL tasks. I will develop this functionality only if someone else desires this feature.
