diff --git a/src/Appwrite/Platform/Workers/Migrations.php b/src/Appwrite/Platform/Workers/Migrations.php index 6b3a8cf7e4..2ac8bd5a1f 100644 --- a/src/Appwrite/Platform/Workers/Migrations.php +++ b/src/Appwrite/Platform/Workers/Migrations.php @@ -248,9 +248,13 @@ class Migrations extends Action $errors = $migration->getAttribute('errors', []); foreach ($errors as $error) { $decoded = \json_decode($error, true); - if (\is_array($decoded) && isset($decoded['trace'])) { - unset($decoded['trace']); + if (\is_array($decoded)) { + if (isset($decoded['trace'])) { + unset($decoded['trace']); + } $messages[] = json_encode($decoded); + } else { + $messages[] = $error; } } @@ -387,7 +391,15 @@ class Migrations extends Action $errors = []; foreach ([...$sourceErrors, ...$destinationErrors] as $error) { - $errors[] = \json_encode($error); + $encoded = \json_decode(\json_encode($error), true); + if (\is_array($encoded)) { + if (isset($encoded['trace'])) { + unset($encoded['trace']); + } + $errors[] = \json_encode($encoded); + } else { + $errors[] = \json_encode($error); + } } $migration->setAttribute('errors', $errors); @@ -419,7 +431,15 @@ class Migrations extends Action $errors = []; foreach ([...$sourceErrors, ...$destinationErrors] as $error) { - $errors[] = \json_encode($error); + $encoded = \json_decode(\json_encode($error), true); + if (\is_array($encoded)) { + if (isset($encoded['trace'])) { + unset($encoded['trace']); + } + $errors[] = \json_encode($encoded); + } else { + $errors[] = \json_encode($error); + } } $migration->setAttribute('errors', $errors); diff --git a/src/Appwrite/Utopia/Response/Model/Migration.php b/src/Appwrite/Utopia/Response/Model/Migration.php index 5f8e859b93..df8b2d79ec 100644 --- a/src/Appwrite/Utopia/Response/Model/Migration.php +++ b/src/Appwrite/Utopia/Response/Model/Migration.php @@ -126,10 +126,10 @@ class Migration extends Model $decoded = \json_decode($error, true); if (\is_array($decoded)) { - $errors[$index] = \json_encode([ - 'code' => $decoded['code'] ?? 0, - 'message' => $decoded['message'] ?? null, - ]); + if (isset($decoded['trace'])) { + unset($decoded['trace']); + } + $errors[$index] = \json_encode($decoded); } }