Problem/Motivation

When profiling a site, I noticed that schema_metatag's breadcrumb manager causes breadcrumbs to be fetched a second time - running all the breadcrumb services' build() methods twice. Because breadcrumbs are generally per-page, this is a lot of additional work across a site.

It's not really possible to cache this in schema_metatag, or not unless it decorated core's breadcrumb service. Since other metatag-ish modules might do the same thing, I think we should add a static cache to core so that breadcrumb building can only ever happen once.

https://git.drupalcode.org/project/schema_metatag/-/blob/3.1.x/src/Plugi...

Should probably use the cache.memory bin.

Steps to reproduce

Proposed resolution

Remaining tasks

User interface changes

Introduced terminology

API changes

Data model changes

Release notes snippet

Issue fork drupal-3621448

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

catch created an issue. See original summary.

hoxton made their first commit to this issue’s fork.

chaitanyadessai made their first commit to this issue’s fork.

chaitanyadessai’s picture

Status: Active » Needs review

Please review MR.