Purge queue items not deleted after drush cron

Created on 2 October 2018, over 5 years ago
Updated 26 June 2023, about 1 year ago

Hi there,
Maybe I do something wrong, but I have the following problem:

Problem

I use the purge module together with the submodule purge_processor_cron and the varnish_purge module.
Everything works like a charm, except when I run the cron with Drush (9.4.0).
All the invalidated tags get invalidated, but after that, the queue items won't get deleted. That means that by the next cron runs, the queue items will be invalidated over and over again and the queue will only grow.

With the help of XDEBUG, I managed to figure out that by a cron run via cron.php, the 'destruct' method of the QueueService class is being called, which will cause the queue items to be deleted. However, when running cron via Drush, this destruct method is skipped.

For now I will run the cron via cron.php, but I think it is a bug that should be fixed.

Side note: I use the ultime_cron module, but I don't know if this has any effect on the problem.

πŸ› Bug report
Status

Fixed

Version

3.0

Component

Code

Created by

πŸ‡³πŸ‡±Netherlands BryanDeNijs

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Not all content is available!

It's likely this issue predates Contrib.social: some issue and comment data are missing.

  • πŸ‡¦πŸ‡ΊAustralia acbramley

    Just a warning - Drush 12 has seemingly rolled this functionality back. Destruct is no longer called on drush p:queue-work meaning invalidations stay in the queue table and are repeatedly picked up once the expire time lapses.

Production build 0.69.0 2024