From 6916a7d9ba4c75fb9306e0579739efb6fe8d0857 Mon Sep 17 00:00:00 2001 From: mstfyldz Date: Wed, 12 Aug 2026 10:41:08 +0300 Subject: [PATCH] perf: prevent duplicate CDN uploads by checking Supabase first --- src/controllers/precedent.controller.ts | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/controllers/precedent.controller.ts b/src/controllers/precedent.controller.ts index 0574dfa..8bfff6b 100644 --- a/src/controllers/precedent.controller.ts +++ b/src/controllers/precedent.controller.ts @@ -146,6 +146,23 @@ export const cachePrecedentDocument = async (req: Request, res: Response) => { } const documentId = String(item.documentId); + + // 0. Duplicate Kontrolü (Veritabanında var mı?) + try { + const { data: existing } = await supabase + .from('cached_precedents') + .select('document_id') + .eq('document_id', documentId) + .single(); + + if (existing) { + console.log(`[Cache] Karar zaten arşivde mevcut, işlem atlandı: ${documentId}`); + return res.json({ success: true, message: 'Zaten ön bellekte', cached: true }); + } + } catch (err) { + // Eğer tablo boşsa veya hata verirse devam et, sorun yok. + } + // 1. BunnyCDN'e Yükle const bunnyZone = process.env.BUNNY_STORAGE_ZONE || ''; const bunnyKey = process.env.BUNNY_STORAGE_API_KEY || '';