After migrating from 7 to 9, I'm getting a lot of these errors in watchdog, from views.
A non-existent config entity name returned by FieldStorageConfigInterface::getBundles()
: entity type: paragraph
, bundle: iframe
, field name: field_url
Things I've tried:
Checking paragraph bundles(types): there are only two, the iframe one does not exist (I don't need it in the new site).
drush cr
drush config:export
then grepping the files for iframe
: it only exists in media.settings.yml
as iframe_domain: ''
- not relevant
grepping the config files for field_url
- not found.
maybe there's some old content referencing the iframe
bundle? select distinct type from paragraphs_item;
only shows the new bundle names. Same for paragraphs_item_field_data
show tables like "%field_url%";
This does reveal two tables: paragraph__field_url
and paragraph_revision__field_url
- I would have expected these to be deleted. They are both empty though.
show tables like "%iframe%";
- none.
I've been through all the views - but these are all the default D9 ones, plus a few I've added myself for the new site, which do not have anything to do with paragraph bundles.
I checked the fields-used-in-views report - field_url
is not there.
I checked the fields list report. field_url
is there, and weirdly, it says the entity type is paragraph
but then it says:
Text (plain) (module: core)
I tried re-creating a paragraph type called iframe and then deleting it.
I tried to add a field called url, but it is forbidden because that machine name already exists.
I'm stumped as to how to get rid of these errors/notices.
Update
I found some config yml files that related to this URL field. I deleted those and did a config import, which seemed to clear the problem for that field, but opened it up for other fields.
It's now complaining about entity type: paragraph, bundle: grid_item_node_list
, field name: field_text
However I can't use the same deletion approach for that field as it is in use for new content (on different paragraph bundles).
In exported config, no files contain grid_item_node_list
and no files have that in their name. Yet when I grep the database I find :
cache_config.cid
contains 2:
field.field.paragraph.grid_item_node_list.field_page_ref
field.field.paragraph.grid_item_node_list.field_text
And cache_default.data
also contains grid_item_node_list
as does cache_discovery.data
and key_value.value
(for name: paragraph
).
I don't understand why (a) these config aren't exported, and (b) why the cache-related ones aren't cleared on drush cr
.