From 891285a5721fd3f683e3b924d371057dadddd954 Mon Sep 17 00:00:00 2001 From: Nicolas Fryder Date: Tue, 30 Jun 2026 21:28:03 +0200 Subject: [PATCH] =?UTF-8?q?fix(crawler):=20upsert=5Fband=5Fenriched=20$1?= =?UTF-8?q?=E2=86=92%s=20(psycopg2=20ne=20supporte=20pas=20la=20syntaxe=20?= =?UTF-8?q?PG=20native)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bug latent : la fonction n'était jamais appelée avant car get_bands_to_enrich retournait 0. Exposé dès le premier run réel avec la nouvelle priority queue. Co-Authored-By: Claude Sonnet 4.6 --- apps/crawler/src/db.py | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/apps/crawler/src/db.py b/apps/crawler/src/db.py index 7952d00..496e6a9 100644 --- a/apps/crawler/src/db.py +++ b/apps/crawler/src/db.py @@ -103,24 +103,22 @@ def upsert_band_enriched(ma_id: int, data: Dict[str, Any], html_hash: str) -> bo """Met à jour les champs d'enrichissement d'un band.""" sql = """ UPDATE bands SET - status = COALESCE($2, status), - genre = COALESCE($3, genre), - themes = COALESCE($4, themes), - formed_year = COALESCE($5, formed_year), - data = data || $6::jsonb, + status = COALESCE(%s, status), + genre = COALESCE(%s, genre), + themes = COALESCE(%s, themes), + formed_year = COALESCE(%s, formed_year), + data = data || %s::jsonb, enriched = true, - crawled_at = $7, - crawled_hash = $8, - ma_created_at = COALESCE($9, ma_created_at), - ma_modified_at= COALESCE($10, ma_modified_at) - WHERE ma_id = $1 + crawled_at = %s, + crawled_hash = %s, + ma_created_at = COALESCE(%s, ma_created_at), + ma_modified_at= COALESCE(%s, ma_modified_at) + WHERE ma_id = %s """ ts = now_utc() with get_conn() as conn: with conn.cursor() as cur: - import json cur.execute(sql, ( - ma_id, data.get("status"), data.get("genre"), data.get("themes"), @@ -130,6 +128,7 @@ def upsert_band_enriched(ma_id: int, data: Dict[str, Any], html_hash: str) -> bo html_hash, data.get("ma_created_at"), data.get("ma_modified_at"), + ma_id, )) return cur.rowcount > 0