diff --git a/head2head.module b/head2head.module
index 998331b..13ddf8b 100644
--- a/head2head.module
+++ b/head2head.module
@@ -7,12 +7,14 @@
 
 use Drupal\Core\Cache\DatabaseBackend;
 use Drupal\Core\Cache\DatabaseCacheTagsChecksum;
+use Drupal\Core\Database\DatabaseExceptionWrapper;
 use Drupal\Core\Database\Database;
 use Drupal\Core\Entity\ContentEntityTypeInterface;
 use Drupal\Core\Entity\DynamicallyFieldableEntityStorageInterface;
 use Drupal\Core\Entity\Sql\SqlEntityStorageInterface;
 use Drupal\field\Entity\FieldConfig;
 use Drupal\field\Entity\FieldStorageConfig;
+use Drupal\Component\Utility\SafeMarkup;
 
 /**
  * Converts Taxonomy term reference fields to Entity reference.
@@ -222,8 +224,13 @@ function head2head_2431329() {
           db_query("UPDATE {" . $base_table . "} bt INNER JOIN {" . $data_table . "} dt ON (bt.$field = dt.$field AND default_langcode = 1) SET bt.langcode = dt.$data_langcode_field");
 
           // Set NOT NULL.
-          $schema['not null'] = TRUE;
-          db_change_field($base_table, 'langcode', 'langcode', $schema);
+          try {
+            $schema['not null'] = TRUE;
+            db_change_field($base_table, 'langcode', 'langcode', $schema);
+          }
+          catch (DatabaseExceptionWrapper $e) {
+            drupal_set_message(SafeMarkup::format('Failed to set NOT NULL on table %table.langcode due to NULL values.', ['%table' => $base_table]), 'error');
+          }
         }
       }
     }
