• i have set not to purge cache on plugin updates but many plugins still force purge un updates (like elementor) , can it be suppressed?

Viewing 11 replies - 1 through 11 (of 11 total)
  • Thread Starter edmundspriede

    (@edmundspriede)

    i want only manual purge

    Plugin Support litetim

    (@litetim)

    @edmundspriede have you look into other settings from here: https://docs.litespeedtech.com/lscache/lscwp/cache/#purge-tab ?

    • This reply was modified 2 weeks, 3 days ago by litetim.
    Thread Starter edmundspriede

    (@edmundspriede)

    it is off on all my sites but still happens

    Plugin Support litetim

    (@litetim)

    @edmundspriede other settings are done so purges should not happen, yes?

    Plugin Support litetim

    (@litetim)

    @edmundspriede how did you updated the plugin? Did you uploaded a package and click install?

    Thread Starter edmundspriede

    (@edmundspriede)

    may be both, but it definitely purges after elementor updates and then i discovered
    /thirdparty directory which overrides purge settings.

    so in my case i would still need hard purge disable.

    Plugin Support litetim

    (@litetim)

    @edmundspriede
    OK let’s backtrack a little bit.

    Purge All On Upgrade purge is the setting that will stop purge on any plugins update. Please confirm that is working as expected even with module uploaded from computer.

    Elementor purge: that is expected behaviour because in most cases that is needed. Let’s test a small change to code and see if this stops the clear: https://github.com/litespeedtech/lscache_wp/blob/master/thirdparty/elementor.cls.php#L70 add a comment to this line pls and see what happens.

    We can adjust the behaviour in some ways, but not many requests came for this behaviour. Let’s see what are results after the test and I can talk to devs.
    Thank you

    • This reply was modified 2 weeks ago by litetim.

    Hi, I investigated this on my site and found that the purge is not being triggered by the normal LiteSpeed “Purge All Hooks” setting, but by the Elementor integration inside LiteSpeed.

    In my purge log, the chain is consistently: wp_version_checkwp_maybe_auto_updateupgrader_process_completeelementor/core/files/clear_cachelitespeed_purge_all.
    The key point is that Elementor hooks upgrader_process_complete and then calls its own clear_cache() logic when that hook fires.

    What seems wrong is that Elementor does not appear to check whether an actual update really happened; it reacts to the fact that upgrader_process_complete fired, and that is enough to trigger elementor/core/files/clear_cache.

    After that, LiteSpeed’s Elementor integration catches the Elementor cache-clear event and runs a full purge. In my logs, the callback comes from wp-content/plugins/litespeed-cache/thirdparty/elementor.cls.php, and the payload is Elementor - Regenerate CSS & Data.

    So the root problem does not seem to be the crawler, TTL, or the standard purge settings. The actual trigger is: upgrader_process_complete fires, Elementor clears its cache, and LiteSpeed translates that into purge_all.
    I also found Elementor issue #33057, which reports that Elementor deletes CSS files daily, and there are duplicate reports linked to the same behavior. That seems closely related to what is happening here. (https://github.com/elementor/elementor/issues/33057)

    In short: the issue is not simply “a purge happens after a real update,” but rather that Elementor seems to react to upgrader_process_complete too broadly, even in cases where no meaningful update appears to have taken place, and LiteSpeed then amplifies that into a full cache purge.

    My mu-plugin’s output:

    {"time_local":"2026-05-21 07:06:10","event":"litespeed_purge_all","request_uri":"/wp-cron.php?doing_wp_cron","method":"GET","referer":"","remote_addr":"127.0.0.1","doing_ajax":0,"doing_cron":1,"doing_rest":0,"is_admin":0,"current_filter":"litespeed_purge_all","filter_stack":["wp_version_check","wp_maybe_auto_update","upgrader_process_complete","elementor/core/files/clear_cache","litespeed_purge_all"],"query_action":"","query_lscwp_ctrl":"","user_id":0,"payload":["Elementor - Regenerate CSS & Data"],"backtrace":"#0 lscpl_backtrace_summary wp-content/mu-plugins/litespeed-purge-log.php:239 | #1 lscpl_write_log wp-content/mu-plugins/litespeed-purge-log.php:260 | #2 lscpl_log_generic wp-includes/class-wp-hook.php:341 | #3 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365 | #4 WP_Hook->do_action wp-includes/plugin.php:522 | #5 do_action wp-content/plugins/litespeed-cache/thirdparty/elementor.cls.php:92 | #6 LiteSpeed\\Thirdparty\\Elementor::regenerate_litespeed_cache wp-includes/class-wp-hook.php:341 | #7 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365 | #8 WP_Hook->do_action wp-includes/plugin.php:522 | #9 do_action wp-content/plugins/elementor/core/files/manager.php:130"}
    {"time_local":"2026-05-21 07:06:10","event":"filter:litespeed_purge_tags","request_uri":"/wp-cron.php?doing_wp_cron","method":"GET","referer":"","remote_addr":"127.0.0.1","doing_ajax":0,"doing_cron":1,"doing_rest":0,"is_admin":0,"current_filter":"litespeed_purge_tags","filter_stack":["wp_version_check","wp_maybe_auto_update","upgrader_process_complete","elementor/core/files/clear_cache","litespeed_purge_all","litespeed_purge_tags"],"query_action":"","query_lscwp_ctrl":"","user_id":0,"payload":{"is_private":0,"tags":["*"]}}
    {"time_local":"2026-05-21 07:06:10","event":"litespeed_purged_all_lscache","request_uri":"/wp-cron.php?doing_wp_cron","method":"GET","referer":"","remote_addr":"127.0.0.1","doing_ajax":0,"doing_cron":1,"doing_rest":0,"is_admin":0,"current_filter":"litespeed_purged_all_lscache","filter_stack":["wp_version_check","wp_maybe_auto_update","upgrader_process_complete","elementor/core/files/clear_cache","litespeed_purge_all","litespeed_purged_all_lscache"],"query_action":"","query_lscwp_ctrl":"","user_id":0,"payload":[""],"backtrace":"#0 lscpl_backtrace_summary wp-content/mu-plugins/litespeed-purge-log.php:239 | #1 lscpl_write_log wp-content/mu-plugins/litespeed-purge-log.php:260 | #2 lscpl_log_generic wp-includes/class-wp-hook.php:341 | #3 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365 | #4 WP_Hook->do_action wp-includes/plugin.php:522 | #5 do_action wp-content/plugins/litespeed-cache/src/purge.cls.php:267 | #6 LiteSpeed\\Purge->_purge_all_lscache wp-content/plugins/litespeed-cache/src/purge.cls.php:220 | #7 LiteSpeed\\Purge->_purge_all wp-content/plugins/litespeed-cache/src/purge.cls.php:209 | #8 LiteSpeed\\Purge::purge_all wp-includes/class-wp-hook.php:341 | #9 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365"}
    {"time_local":"2026-05-21 07:06:10","event":"filter:litespeed_purge_tags","request_uri":"/wp-cron.php?doing_wp_cron","method":"GET","referer":"","remote_addr":"127.0.0.1","doing_ajax":0,"doing_cron":1,"doing_rest":0,"is_admin":0,"current_filter":"litespeed_purge_tags","filter_stack":["wp_version_check","wp_maybe_auto_update","upgrader_process_complete","elementor/core/files/clear_cache","litespeed_purge_all","litespeed_purge_tags"],"query_action":"","query_lscwp_ctrl":"","user_id":0,"payload":{"is_private":0,"tags":["*","_LOCALRES"]}}
    {"time_local":"2026-05-21 07:06:10","event":"litespeed_purged_all_object","request_uri":"/wp-cron.php?doing_wp_cron","method":"GET","referer":"","remote_addr":"127.0.0.1","doing_ajax":0,"doing_cron":1,"doing_rest":0,"is_admin":0,"current_filter":"litespeed_purged_all_object","filter_stack":["wp_version_check","wp_maybe_auto_update","upgrader_process_complete","elementor/core/files/clear_cache","litespeed_purge_all","litespeed_purged_all_object"],"query_action":"","query_lscwp_ctrl":"","user_id":0,"payload":[""]}
    {"time_local":"2026-05-21 07:06:10","event":"litespeed_purged_all_opcache","request_uri":"/wp-cron.php?doing_wp_cron","method":"GET","referer":"","remote_addr":"127.0.0.1","doing_ajax":0,"doing_cron":1,"doing_rest":0,"is_admin":0,"current_filter":"litespeed_purged_all_opcache","filter_stack":["wp_version_check","wp_maybe_auto_update","upgrader_process_complete","elementor/core/files/clear_cache","litespeed_purge_all","litespeed_purged_all_opcache"],"query_action":"","query_lscwp_ctrl":"","user_id":0,"payload":[""]}
    {"time_local":"2026-05-21 07:06:10","event":"litespeed_purged_all","request_uri":"/wp-cron.php?doing_wp_cron","method":"GET","referer":"","remote_addr":"127.0.0.1","doing_ajax":0,"doing_cron":1,"doing_rest":0,"is_admin":0,"current_filter":"litespeed_purged_all","filter_stack":["wp_version_check","wp_maybe_auto_update","upgrader_process_complete","elementor/core/files/clear_cache","litespeed_purge_all","litespeed_purged_all"],"query_action":"","query_lscwp_ctrl":"","user_id":0,"payload":[""],"backtrace":"#0 lscpl_backtrace_summary wp-content/mu-plugins/litespeed-purge-log.php:239 | #1 lscpl_write_log wp-content/mu-plugins/litespeed-purge-log.php:260 | #2 lscpl_log_generic wp-includes/class-wp-hook.php:341 | #3 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365 | #4 WP_Hook->do_action wp-includes/plugin.php:522 | #5 do_action wp-content/plugins/litespeed-cache/src/purge.cls.php:239 | #6 LiteSpeed\\Purge->_purge_all wp-content/plugins/litespeed-cache/src/purge.cls.php:209 | #7 LiteSpeed\\Purge::purge_all wp-includes/class-wp-hook.php:341 | #8 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365 | #9 WP_Hook->do_action wp-includes/plugin.php:522"}
    {"time_local":"2026-05-21 07:06:11","event":"litespeed_purge_all","request_uri":"/wp-cron.php?doing_wp_cron","method":"GET","referer":"","remote_addr":"127.0.0.1","doing_ajax":0,"doing_cron":1,"doing_rest":0,"is_admin":0,"current_filter":"litespeed_purge_all","filter_stack":["wp_version_check","wp_maybe_auto_update","upgrader_process_complete","elementor/core/files/clear_cache","litespeed_purge_all"],"query_action":"","query_lscwp_ctrl":"","user_id":0,"payload":["Elementor - Regenerate CSS & Data"],"backtrace":"#0 lscpl_backtrace_summary wp-content/mu-plugins/litespeed-purge-log.php:239 | #1 lscpl_write_log wp-content/mu-plugins/litespeed-purge-log.php:260 | #2 lscpl_log_generic wp-includes/class-wp-hook.php:341 | #3 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365 | #4 WP_Hook->do_action wp-includes/plugin.php:522 | #5 do_action wp-content/plugins/litespeed-cache/thirdparty/elementor.cls.php:92 | #6 LiteSpeed\\Thirdparty\\Elementor::regenerate_litespeed_cache wp-includes/class-wp-hook.php:341 | #7 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365 | #8 WP_Hook->do_action wp-includes/plugin.php:522 | #9 do_action wp-content/plugins/elementor/core/files/manager.php:130"}
    {"time_local":"2026-05-21 07:06:11","event":"litespeed_purged_all_lscache","request_uri":"/wp-cron.php?doing_wp_cron","method":"GET","referer":"","remote_addr":"127.0.0.1","doing_ajax":0,"doing_cron":1,"doing_rest":0,"is_admin":0,"current_filter":"litespeed_purged_all_lscache","filter_stack":["wp_version_check","wp_maybe_auto_update","upgrader_process_complete","elementor/core/files/clear_cache","litespeed_purge_all","litespeed_purged_all_lscache"],"query_action":"","query_lscwp_ctrl":"","user_id":0,"payload":[""],"backtrace":"#0 lscpl_backtrace_summary wp-content/mu-plugins/litespeed-purge-log.php:239 | #1 lscpl_write_log wp-content/mu-plugins/litespeed-purge-log.php:260 | #2 lscpl_log_generic wp-includes/class-wp-hook.php:341 | #3 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365 | #4 WP_Hook->do_action wp-includes/plugin.php:522 | #5 do_action wp-content/plugins/litespeed-cache/src/purge.cls.php:267 | #6 LiteSpeed\\Purge->_purge_all_lscache wp-content/plugins/litespeed-cache/src/purge.cls.php:220 | #7 LiteSpeed\\Purge->_purge_all wp-content/plugins/litespeed-cache/src/purge.cls.php:209 | #8 LiteSpeed\\Purge::purge_all wp-includes/class-wp-hook.php:341 | #9 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365"}
    {"time_local":"2026-05-21 07:06:11","event":"litespeed_purged_all_object","request_uri":"/wp-cron.php?doing_wp_cron","method":"GET","referer":"","remote_addr":"127.0.0.1","doing_ajax":0,"doing_cron":1,"doing_rest":0,"is_admin":0,"current_filter":"litespeed_purged_all_object","filter_stack":["wp_version_check","wp_maybe_auto_update","upgrader_process_complete","elementor/core/files/clear_cache","litespeed_purge_all","litespeed_purged_all_object"],"query_action":"","query_lscwp_ctrl":"","user_id":0,"payload":[""]}
    {"time_local":"2026-05-21 07:06:11","event":"litespeed_purged_all","request_uri":"/wp-cron.php?doing_wp_cron","method":"GET","referer":"","remote_addr":"127.0.0.1","doing_ajax":0,"doing_cron":1,"doing_rest":0,"is_admin":0,"current_filter":"litespeed_purged_all","filter_stack":["wp_version_check","wp_maybe_auto_update","upgrader_process_complete","elementor/core/files/clear_cache","litespeed_purge_all","litespeed_purged_all"],"query_action":"","query_lscwp_ctrl":"","user_id":0,"payload":[""],"backtrace":"#0 lscpl_backtrace_summary wp-content/mu-plugins/litespeed-purge-log.php:239 | #1 lscpl_write_log wp-content/mu-plugins/litespeed-purge-log.php:260 | #2 lscpl_log_generic wp-includes/class-wp-hook.php:341 | #3 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365 | #4 WP_Hook->do_action wp-includes/plugin.php:522 | #5 do_action wp-content/plugins/litespeed-cache/src/purge.cls.php:239 | #6 LiteSpeed\\Purge->_purge_all wp-content/plugins/litespeed-cache/src/purge.cls.php:209 | #7 LiteSpeed\\Purge::purge_all wp-includes/class-wp-hook.php:341 | #8 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365 | #9 WP_Hook->do_action wp-includes/plugin.php:522"}
    {"time_local":"2026-05-21 07:06:13","event":"litespeed_purge_all","request_uri":"/wp-cron.php?doing_wp_cron","method":"GET","referer":"","remote_addr":"127.0.0.1","doing_ajax":0,"doing_cron":1,"doing_rest":0,"is_admin":0,"current_filter":"litespeed_purge_all","filter_stack":["wp_version_check","wp_maybe_auto_update","upgrader_process_complete","elementor/core/files/clear_cache","litespeed_purge_all"],"query_action":"","query_lscwp_ctrl":"","user_id":0,"payload":["Elementor - Regenerate CSS & Data"],"backtrace":"#0 lscpl_backtrace_summary wp-content/mu-plugins/litespeed-purge-log.php:239 | #1 lscpl_write_log wp-content/mu-plugins/litespeed-purge-log.php:260 | #2 lscpl_log_generic wp-includes/class-wp-hook.php:341 | #3 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365 | #4 WP_Hook->do_action wp-includes/plugin.php:522 | #5 do_action wp-content/plugins/litespeed-cache/thirdparty/elementor.cls.php:92 | #6 LiteSpeed\\Thirdparty\\Elementor::regenerate_litespeed_cache wp-includes/class-wp-hook.php:341 | #7 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365 | #8 WP_Hook->do_action wp-includes/plugin.php:522 | #9 do_action wp-content/plugins/elementor/core/files/manager.php:130"}
    {"time_local":"2026-05-21 07:06:13","event":"litespeed_purged_all_lscache","request_uri":"/wp-cron.php?doing_wp_cron","method":"GET","referer":"","remote_addr":"127.0.0.1","doing_ajax":0,"doing_cron":1,"doing_rest":0,"is_admin":0,"current_filter":"litespeed_purged_all_lscache","filter_stack":["wp_version_check","wp_maybe_auto_update","upgrader_process_complete","elementor/core/files/clear_cache","litespeed_purge_all","litespeed_purged_all_lscache"],"query_action":"","query_lscwp_ctrl":"","user_id":0,"payload":[""],"backtrace":"#0 lscpl_backtrace_summary wp-content/mu-plugins/litespeed-purge-log.php:239 | #1 lscpl_write_log wp-content/mu-plugins/litespeed-purge-log.php:260 | #2 lscpl_log_generic wp-includes/class-wp-hook.php:341 | #3 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365 | #4 WP_Hook->do_action wp-includes/plugin.php:522 | #5 do_action wp-content/plugins/litespeed-cache/src/purge.cls.php:267 | #6 LiteSpeed\\Purge->_purge_all_lscache wp-content/plugins/litespeed-cache/src/purge.cls.php:220 | #7 LiteSpeed\\Purge->_purge_all wp-content/plugins/litespeed-cache/src/purge.cls.php:209 | #8 LiteSpeed\\Purge::purge_all wp-includes/class-wp-hook.php:341 | #9 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365"}
    {"time_local":"2026-05-21 07:06:13","event":"litespeed_purged_all_object","request_uri":"/wp-cron.php?doing_wp_cron","method":"GET","referer":"","remote_addr":"127.0.0.1","doing_ajax":0,"doing_cron":1,"doing_rest":0,"is_admin":0,"current_filter":"litespeed_purged_all_object","filter_stack":["wp_version_check","wp_maybe_auto_update","upgrader_process_complete","elementor/core/files/clear_cache","litespeed_purge_all","litespeed_purged_all_object"],"query_action":"","query_lscwp_ctrl":"","user_id":0,"payload":[""]}
    {"time_local":"2026-05-21 07:06:13","event":"litespeed_purged_all","request_uri":"/wp-cron.php?doing_wp_cron","method":"GET","referer":"","remote_addr":"127.0.0.1","doing_ajax":0,"doing_cron":1,"doing_rest":0,"is_admin":0,"current_filter":"litespeed_purged_all","filter_stack":["wp_version_check","wp_maybe_auto_update","upgrader_process_complete","elementor/core/files/clear_cache","litespeed_purge_all","litespeed_purged_all"],"query_action":"","query_lscwp_ctrl":"","user_id":0,"payload":[""],"backtrace":"#0 lscpl_backtrace_summary wp-content/mu-plugins/litespeed-purge-log.php:239 | #1 lscpl_write_log wp-content/mu-plugins/litespeed-purge-log.php:260 | #2 lscpl_log_generic wp-includes/class-wp-hook.php:341 | #3 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365 | #4 WP_Hook->do_action wp-includes/plugin.php:522 | #5 do_action wp-content/plugins/litespeed-cache/src/purge.cls.php:239 | #6 LiteSpeed\\Purge->_purge_all wp-content/plugins/litespeed-cache/src/purge.cls.php:209 | #7 LiteSpeed\\Purge::purge_all wp-includes/class-wp-hook.php:341 | #8 WP_Hook->apply_filters wp-includes/class-wp-hook.php:365 | #9 WP_Hook->do_action wp-includes/plugin.php:522"}
    Thread Starter edmundspriede

    (@edmundspriede)

    but there shoud just be shortcircut to disable all auto purges. or i just have to kill it in code.

    Plugin Support litetim

    (@litetim)

    @estalhun
    I will go with your findings. We added the purge in Elementor so we refresh CSS/JS changes that happen on page edits.
    I think this purges must be discussed with Elementor team.

    @edmundspriede We keep in mind the request to stop automatically purge(from plugins, theme or WP) but, for now, nothing concrete here.

    • This reply was modified 1 week, 4 days ago by litetim.

    Dear @edmundspriede

    Until a better solution is found, I’ve added this line as a comment:

    // add_action( 'elementor/core/files/clear_cache', __CLASS__ . '::regenerate_litespeed_cache' );

    https://github.com/elementor/elementor/issues/35983

    • This reply was modified 1 week, 3 days ago by estalhun.
Viewing 11 replies - 1 through 11 (of 11 total)

You must be logged in to reply to this topic.