Index: src/Service/FieldDefaultsProcessor.php
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/src/Service/FieldDefaultsProcessor.php b/src/Service/FieldDefaultsProcessor.php
--- a/src/Service/FieldDefaultsProcessor.php	(revision 2d8c21ae7209da783babc6f08711b67375ba5db7)
+++ b/src/Service/FieldDefaultsProcessor.php	(date 1776235811905)
@@ -78,6 +78,7 @@
         $no_overwrite,
         $preserve,
       ]);
+
     $batch->setFinishCallback([
       FieldDefaultsProcessor::class,
       'processEntityBatchFinished',
@@ -116,10 +117,10 @@
     // @todo allow setting this limit per batch.
     $baseQuery->range($context['sandbox']['progress'], 10);
     $entityIds = $baseQuery->execute();
-    $hasChanged = FALSE;
     foreach ($entityIds as $entityId) {
       $context['sandbox']['progress']++;
       $context['sandbox']['current_entity'] = $entityId;
+      $hasChanged = FALSE;

       if ($entity = \Drupal::entityTypeManager()->getStorage($entityType)->load($entityId)) {

@@ -135,28 +136,29 @@
           if ($languageValue) {
             // @todo should this add a translation if not exists?
             if ($entity->hasTranslation($languageId)) {
-              $entity = $entity->getTranslation($languageId);
+              $translation = $entity->getTranslation($languageId);

-              if (!$noOverwrite || $entity->get($fieldName)->isEmpty()) {
-                $entity->{$fieldName} = $fieldValues;
+              if (!$noOverwrite || $translation->get($fieldName)->isEmpty()) {
+                $translation->{$fieldName} = $fieldValues;
                 $hasChanged = TRUE;
               }
             }
           }
         }
-      }
-      // Save the entity and update batch.
-      if ($hasChanged) {
-        // Preserve changed date.
-        if ($preserve && $entity->hasField('changed')) {
-          // @todo D11 will only need syncing.
-          if ($entity instanceof SynchronizableInterface) {
-            $entity->setSyncing(TRUE);
-          }
-          $entity->changed->preserve = TRUE;
-        }
-        $context['results'][] = $entity->save();
-        $context['message'] = t("Setting Default Values on entity id: @id", ["@id" => $entityId]);
+
+        // Save the entity and update batch.
+        if ($hasChanged) {
+          // Preserve changed date.
+          if ($preserve && $entity->hasField('changed')) {
+            // @todo D11 will only need syncing.
+            if ($entity instanceof SynchronizableInterface) {
+              $entity->setSyncing(TRUE);
+            }
+            $entity->changed->preserve = TRUE;
+          }
+          $context['results'][] = $entity->save();
+          $context['message'] = t("Setting Default Values on entity id: @id", ["@id" => $entityId]);
+        }
       }
     }

Index: field_defaults.module
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/field_defaults.module b/field_defaults.module
--- a/field_defaults.module	(revision 2d8c21ae7209da783babc6f08711b67375ba5db7)
+++ b/field_defaults.module	(date 1776236002061)
@@ -86,6 +86,12 @@
     $fieldValues = $form_state->getValue(['default_value_input', $fieldConfig->getName()]);
     if ($fieldValues !== NULL) {
       \Drupal::service('field_defaults.processor')->processFieldForm($fieldConfig, $fieldDefaults, $fieldValues);
+
+      $batch =& batch_get();
+      if ($batch) {
+        $batch['progressive'] = FALSE;
+        batch_process();
+      }
     }
   }
 }
