From f94ac213b59a35463894c1406efb894416256eb0 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Mon, 9 Mar 2026 15:48:21 +0700 Subject: [PATCH] fix: avoid lost writes by running bulk proxy pool updates sequentially against JSON db Made-with: Cursor --- .../(dashboard)/dashboard/providers/[id]/page.js | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/app/(dashboard)/dashboard/providers/[id]/page.js b/src/app/(dashboard)/dashboard/providers/[id]/page.js index 6a4517ff..d2ee0d3e 100644 --- a/src/app/(dashboard)/dashboard/providers/[id]/page.js +++ b/src/app/(dashboard)/dashboard/providers/[id]/page.js @@ -334,16 +334,20 @@ export default function ProviderDetailPage() { const proxyPoolId = bulkProxyPoolId === "__none__" ? null : bulkProxyPoolId; setBulkUpdatingProxy(true); try { - const results = await Promise.all( - selectedConnectionIds.map(async (connectionId) => { + const results = []; + for (const connectionId of selectedConnectionIds) { + try { const res = await fetch(`/api/providers/${connectionId}`, { method: "PUT", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ proxyPoolId }), }); - return res.ok; - }) - ); + results.push(res.ok); + } catch (e) { + console.log("Error applying bulk proxy pool for", connectionId, e); + results.push(false); + } + } const failedCount = results.filter((ok) => !ok).length; if (failedCount > 0) {