diff --git a/core/lib/Drupal/Core/Entity/ContentEntityBase.php b/core/lib/Drupal/Core/Entity/ContentEntityBase.php
--- a/core/lib/Drupal/Core/Entity/ContentEntityBase.php
+++ b/core/lib/Drupal/Core/Entity/ContentEntityBase.php
@@ -857,11 +857,7 @@ public function onChange($name) {
       case $this->defaultLangcodeKey:
-        if ($this->isDefaultTranslation()) {
-          // @todo Use a standard method to make the default_langcode field
-          //   read-only. See https://www.drupal.org/node/2443991.
-          if (isset($this->values[$this->defaultLangcodeKey]) && $this->get($this->defaultLangcodeKey)->value != $this->isDefaultTranslation()) {
-            $this->get($this->defaultLangcodeKey)->setValue($this->isDefaultTranslation(), FALSE);
-            $message = new FormattableMarkup('The default translation flag cannot be changed (@langcode).', ['@langcode' => $this->activeLangcode]);
-            throw new \LogicException($message);
-          }
-        }
+        // @todo Use a standard method to make the default_langcode field
+        //   read-only. See https://www.drupal.org/node/2443991.
+        if (isset($this->values[$this->defaultLangcodeKey]) && $this->get($this->defaultLangcodeKey)->value != $this->isDefaultTranslation()) {
+          $this->get($this->defaultLangcodeKey)->setValue($this->isDefaultTranslation(), FALSE);
+        }
         break;