Details
-
Improvement
-
Resolution: Unresolved
-
High
-
None
-
5.4.5
-
None
Description
In `eZContentOperationCollection::removeNodes()` there is a loop that calls `$node->removeThis()`.
Every iteration of the loop subsequently causes `eZRole::cleanupByNode( $this )` to be called, which calls
`eZRole::expireCache()`, which calls `eZUser::cleanupCache()`.
In installations with a large number of articles, where each article may have many locations, it's possible that several locations of one article are removed (or added) by script or by an editor, and this function is triggered quite often. In situations where though heavy content publishing / editing / work tec occurs, the eZ cache isn't stable and it expires very often which causes high load etc.
Expected behaviour:
The `user-info-cache` should only expire once when locations are moved / removed.
Ref: ezpublish_legacy/kernel/content/ezcontentoperationcollection.php