magento / magento/magento2

Why do we need parent identities on frontend?

Open
#35,546 30 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Area: Framework Issue: Confirmed Priority: P3 Progress: ready for dev Reported on 2.3.6 Reproduced on 2.4.x Triage: Dev.Experience
Dominant language
PHP
Stars
12.2k
Forks
9.4k
PR merge metrics
No merged PRs in 30d

Description

I've noticed that we have plugin `\Magento\ConfigurableProduct\Model\Plugin\ProductIdentitiesExtender::afterGetIdentities` that is responsible to add parent tags for each child product. For example, that makes the product listing page much slower because we need to load the parent for each product on the page.

Why do we really need that on frontend? I tested and it PURGE cache for all child products when configurable product is saved.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with Magento\ConfigurableProduct\Model\Plugin\ProductIdentitiesExtender::afterGetIdentities and trace how parent identities are used for frontend cache invalidation. Determine whether those identities are required, then document the impact on product listing performance and cache purging; the issue is complete when the behavior and an agreed change are clearly established.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
backend, performance
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.