X-Git-Url: http://aleph1.co.uk/gitweb/?a=blobdiff_plain;f=web%2Fcore%2Fmodules%2Ffield%2Fsrc%2FConfigImporterFieldPurger.php;h=c38fc4b13631c9025abedf64cf3d375ff774b02b;hb=74df008bdbb3a11eeea356744f39b802369bda3c;hp=3974511a66dfbc5f56d6ae10800ee65f4e3296e8;hpb=a2bd1bf0c2c1f1a17d188f4dc0726a45494cefae;p=yaffs-website diff --git a/web/core/modules/field/src/ConfigImporterFieldPurger.php b/web/core/modules/field/src/ConfigImporterFieldPurger.php index 3974511a6..c38fc4b13 100644 --- a/web/core/modules/field/src/ConfigImporterFieldPurger.php +++ b/web/core/modules/field/src/ConfigImporterFieldPurger.php @@ -39,7 +39,7 @@ class ConfigImporterFieldPurger { $field_storage->delete(); } } - field_purge_batch($context['sandbox']['field']['purge_batch_size'], $field_storage->uuid()); + field_purge_batch($context['sandbox']['field']['purge_batch_size'], $field_storage->getUniqueStorageIdentifier()); $context['sandbox']['field']['current_progress']++; $fields_to_delete_count = count(static::getFieldStoragesToPurge($context['sandbox']['field']['extensions'], $config_importer->getUnprocessedConfiguration('delete'))); if ($fields_to_delete_count == 0) { @@ -133,11 +133,11 @@ class ConfigImporterFieldPurger { } // Gather deleted fields from modules that are being uninstalled. - /** @var \Drupal\field\FieldStorageConfigInterface[] $field_storages */ - $field_storages = entity_load_multiple_by_properties('field_storage_config', ['deleted' => TRUE, 'include_deleted' => TRUE]); - foreach ($field_storages as $field_storage) { - if (!in_array($field_storage->getTypeProvider(), $providers)) { - $storages_to_delete[$field_storage->id()] = $field_storage; + /** @var \Drupal\field\FieldStorageConfigInterface[] $deleted_storage_definitions */ + $deleted_storage_definitions = \Drupal::service('entity_field.deleted_fields_repository')->getFieldStorageDefinitions(); + foreach ($deleted_storage_definitions as $field_storage_definition) { + if ($field_storage_definition instanceof FieldStorageConfigInterface && !in_array($field_storage_definition->getTypeProvider(), $providers)) { + $storages_to_delete[$field_storage_definition->id()] = $field_storage_definition; } } return $storages_to_delete;