From 04a9ff9c2305344fd172df6df3bf974a7137eee7 Mon Sep 17 00:00:00 2001 From: Jake Barnby Date: Wed, 3 Sep 2025 03:42:56 +1200 Subject: [PATCH] Ensure ID on create doc op --- .../Platform/Modules/Databases/Http/Transactions/Update.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Appwrite/Platform/Modules/Databases/Http/Transactions/Update.php b/src/Appwrite/Platform/Modules/Databases/Http/Transactions/Update.php index dfae4f3a50..8282e61ef4 100644 --- a/src/Appwrite/Platform/Modules/Databases/Http/Transactions/Update.php +++ b/src/Appwrite/Platform/Modules/Databases/Http/Transactions/Update.php @@ -88,7 +88,7 @@ class Update extends Action } if ($commit) { - $dbForProject->withTransaction(function () use ($dbForProject, $queueForDeletes, $transactionId, $transaction) { + $dbForProject->withTransaction(function () use ($dbForProject, $queueForDeletes, $transactionId, &$transaction) { $dbForProject->updateDocument('transactions', $transactionId, new Document([ 'status' => 'committing', ])); @@ -113,6 +113,9 @@ class Update extends Action $dbForProject->withRequestTimestamp($createdAt, function () use ($dbForProject, $queueForDeletes, $action, $collectionId, $documentId, $data) { switch ($action) { case 'create': + if ($documentId && !isset($data['$id'])) { + $data['$id'] = $documentId; + } $document = new Document($data); $dbForProject->createDocument($collectionId, $document); break;