diff --git a/core/modules/content_translation/content_translation.module b/core/modules/content_translation/content_translation.module
index 8f5e8fd..80efe65 100644
--- a/core/modules/content_translation/content_translation.module
+++ b/core/modules/content_translation/content_translation.module
@@ -476,7 +476,17 @@ function content_translation_language_configuration_element_submit(array $form,
 
   if (\Drupal::service('content_translation.manager')->isEnabled($context['entity_type'], $context['bundle']) != $enabled) {
     \Drupal::service('content_translation.manager')->setEnabled($context['entity_type'], $context['bundle'], $enabled);
-    \Drupal::entityManager()->clearCachedDefinitions();
+    // Update field storage definition if needed.
+    $entity_manager = \Drupal::entityManager();
+    $storage_definitions = $entity_manager->getFieldStorageDefinitions($context['entity_type']);
+    $installed_storage_definitions = $entity_manager->getLastInstalledFieldStorageDefinitions($context['entity_type']);
+    foreach (array_diff_key($storage_definitions, $installed_storage_definitions) as $storage_definition) {
+      /** @var $storage_definition \Drupal\Core\Field\FieldStorageDefinitionInterface */
+      if ($storage_definition->getProvider() == 'content_translation') {
+        $entity_manager->onFieldStorageDefinitionCreate($storage_definition);
+      }
+    }
+    $entity_manager->clearCachedDefinitions();
     \Drupal::service('router.builder_indicator')->setRebuildNeeded();
   }
 }
