- Issue created by @catch
- 🇬🇧United Kingdom catch
While multiple load wouldn't hurt, the bigger problem here is at least with Umami, but probably in general, the content language settings for a bundle often don't exist. This means that hooks like ContentTranslation entity_extra_field_info or anywhere else that checks ContentTranslationManager::isEnabled() can end up repeatedly attempting to load an entity that doesn't exist - and this bypasses any kind of persistent or static caching since we don't cache the non-existence of an entity.
There are maybe three different approaches we could take:
1. Add a static cache to ContentTranslationManager.
2. Add a static cache to EntityStorageBase explicitly for un-found entities, we'd need to unset from there when an entity is created with the same ID.
3. Add an upgrade path to create config entities for all bundles that don't have them, and add code to keep them in sync, but I'm not sure we can enforce that.
Going to add an MR for #1 to show the problem, might open an issue for #2 if I can get my head around implementing it.