Problem/Motivation
Steps to reproduce:
- Install standard in German
- Enable config_translation
- Add the english language
- Edit the standard profile to not have an standard_install() and add
keep_english: true
to its .info.yml file - Export the configuration using drush
- Re-install the site using drush site-install with the
--existing-config
flag.
You'll see an error like
[info] Undefined index: id ConfigurableLanguageManager.php:312 [16.45 sec, 58.13 MB]
[info] Undefined index: id ConfigurableLanguageManager.php:312 [16.45 sec, 58.13 MB]
[info] Undefined index: id ConfigurableLanguageManager.php:312 [16.45 sec, 58.13 MB]
[info] Undefined index: id ConfigurableLanguageManager.php:312 [16.45 sec, 58.13 MB]
[info] Undefined index: id ConfigurableLanguageManager.php:312 [16.45 sec, 58.13 MB]
[info] Undefined index: id ConfigurableLanguageManager.php:312 [16.45 sec, 58.13 MB]
[info] Undefined index: id ConfigurableLanguageManager.php:312 [21.25 sec, 62.74 MB]
[info] Undefined index: id ConfigurableLanguageManager.php:312 [21.25 sec, 62.75 MB]
[info] Undefined index: id ConfigurableLanguageManager.php:312 [21.25 sec, 62.75 MB]
[info] Undefined index: field_type FieldConfigStorageBase.php:25 [22.66 sec, 76.9 MB]
[info] Undefined index: field_type FieldConfigStorageBase.php:28 [22.66 sec, 76.94 MB]
In FieldConfigStorageBase.php line 28:
[RuntimeException]
Unable to determine class for field type '' found in the 'field.field.' configuration
Proposed resolution
The problem is caused by container invalidation not causing a reboot. In a non-interactive install container invalidation shouldn't occur because we don't know what the next task is going to do with the container.