Problem/Motivation
FieldViewsDataProvider::defaultFieldImplementation() iterates the bundles returned by FieldStorageConfig::getBundles() and, for each, loads the
matching FieldConfig. getBundles() is derived from the entity field map, which includes bundle fields provided in code via hook_entity_bundle_field_info(). When a field has a configurable storage (FieldStorageConfig) but its per-bundle instance is declared in code (no FieldConfig entity), FieldConfig::loadByName() returns NULL, and Views logs an error on every Views data rebuild (cache clear, cron, config import).
The message is itself inaccurate: it claims a "non-existent config entity name," but the field genuinely exists, it's simply provided in code rather than as configuration.
Steps to reproduce
1. Create a FieldStorageConfig for a fieldable entity type with no FieldConfig instances.
2. In a module, implement hook_entity_bundle_field_info() to return a code-provided instance of that field for one bundle.
3. Rebuild Views data (e.g. clear caches).
4. The log records "A non-existent config entity name returned by FieldStorageConfigInterface::getBundles(): … field name: " for that bundle.
Proposed resolution
Before logging, confirm the field genuinely has no definition for the bundle.
Remaining tasks
None.
User interface changes
None.
Introduced terminology
None.
API changes
None.
Data model changes
None.
Release notes snippet
FieldViewsDataProvider logs a false "non-existent config entity name" error for code-provided bundle fields.
Issue fork drupal-3605131
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
Comment #2
alex.bukach commented