Details
-
Bug
-
Resolution: Duplicate
-
High
-
None
-
5.3.3
-
None
Description
When using state group limitations, a whole lot of queries are made per content object on the page. On our page this results to 1,400 queries.
We are using a state group to have different states for objects: published, draft, unpublished (so that different users may edit drafts which is not possible otherwise https://doc.ez.no/eZ-Publish/Technical-manual/4.4/Features/User-defined-Object-States).
One easy way to reduce the problem size is the following:
eZ\Publish\Core\Persistence\Legacy\Content\ObjectState\Handler::loadAllGroups() calls loadObjectStateGroupListData() every time a limitation is evaluated. But the groups are always the same, it’s an uncached query without parameters. We could just cache them in-memory during the request.
The harder to solve problem for the rest of the two thirds of those queries would be to cache the limitation per content object.
Attachments
Issue Links
- duplicates
-
EZP-23462 Cache Object state Persistence class with Stash
- Closed