Provide a mechanism to disable a purger and queuer

Created on 28 June 2016, over 8 years ago
Updated 28 August 2024, 3 months ago

Problem/Motivation

I am currently using the Purge module with the HTTP purger to manage cached pages via cache tags on 3 varnish servers. Occasionally, one of the 3 servers needs to be taken offline for maintenance. During this time the purge module is correctly attempting to call the offline server and logging the invalidation requests as failed. This is causing performance issues because we are using the 'Late runtime processor'

Proposed resolution

The purge plugin configuration file does include a status settings (status: true) which does not do anything. Ideally, the UI should be provided a mechanism to disable/enable a purger.

Remaining tasks

TDB

User interface changes

TDB

API changes

TDB

Data model changes

None

Feature request
Status

Fixed

Version

3.0

Component

Code

Created by

🇺🇸United States jrockowitz Brooklyn, NY

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.

  • 🇪🇸Spain rodrigoaguilera Barcelona

    For reference:
    The solution from #5 didn't work for me, only nulling each purger

    $config['purge.plugins']['purgers'][0] = NULL;
    $config['purge.plugins']['purgers'][1] = NULL;
    $config['purge.plugins']['purgers'][2] = NULL;
    
    
    • japerry committed 57112485 on 8.x-3.x
      Issue #2757155 by japerry, moshe weitzman: Provide a mechanism to...
  • Status changed to Fixed about 1 year ago
  • 🇺🇸United States japerry KVUO

    Added a few more with the drush commands moving to purge core. Fixed!

  • Automatically closed - issue fixed for 2 weeks with no activity.

  • Status changed to Fixed 10 months ago
  • I wish I had a more precise way than #12 to disable specific purgers.
    Relying on indexes is not very safe as it could change when you add purgers or change their order.
    There should be a boolean on each purger to define if it is enabled or not.
    But for now #12 is my only working option.

  • @japerry
    How is this fixed?
    What is the command to disable a queuer?
    Per #4, the available solution "isn't a full fix".

  • IMO there is no fix here, only workarounds and for a specific use case on top of that.
    The commit retitles the issue to "provide a mechanism to programatically alter purge plugins" which has a substantially different meaning.
    The altering doesn't help me as I don't have steady cases where the queuer should be active or inactive.
    I have a nightly migration so the queuer has to be deactivated before and activated after.
    Correct me if I'm wrong, but If I used the "p-queuer-rm" and "p-queuer-add" commands I'd still have to configure the queuer.
    For that I'd either have to proceed to a disproportionately resource intensive full config import, or duplicate the related config files in a separate directory (with the maintenance complication it implies) to do a partial import.
    Hopefully I missed something and the issue is actually fixed for all use cases?

  • 🇮🇳India guptahemant

    @pbouchereau In #8 i created a new contrib module, check if that helps

  • Thanks @guptahemant but if I got it right your module doesn't prevent queueing to happen, which is what I want.

  • Since I can't change the status to "closed (won't fix)" I change the title to what was actually fixed.

Production build 0.71.5 2024