Use of the * wildcard anywhere in the path for a project can trigger deletion of all cache entries in the render cache bin even though this should happen only when * is specified at the top level.

When * is used at a sub-level, it should only affect the pages that match the path pattern. Otherwise, this has the potential to really significantly and unnecessarily slow down the performance of sites that have a large number of pages that are cached.

User actions that may cause this include adding or editing a project, deleting a project, or enabling/disabling a project.

The initial implementation was done for the sake of expediency when the conversion from D7 to D8 was just starting out. But it now needs to be re-visited and re-coded.

The relevant code is in CacheRefresher::doRefresh().

This issue is further described in my blog posting at https://optimizely-to-drupal-8.blogspot.com/2014/07/function-cachecleara...

Comments

tz_earl created an issue. See original summary.

tz_earl’s picture

Title: Wildcard in project causes all cache entries to be deleted » Wildcard in project path causes all cache entries to be deleted
tz_earl’s picture

Status: Active » Fixed

Invalidating of cached pages has been properly implemented via use of cache tags in release 8.x-1.0.

Status: Fixed » Closed (fixed)

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