From 01d9afd3f0f314fb2312467a2abb7b00b591fe5c Mon Sep 17 00:00:00 2001 From: Light1YT Date: Wed, 27 May 2026 17:23:13 +0500 Subject: [PATCH] =?UTF-8?q?chore(tradein):=20drop=20v=5Fstreet=5Fsales=5Fv?= =?UTF-8?q?s=5Flistings=20(hotfix=20=D0=BA=20067=20PR=20K)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit View имел JOIN без street match — связывал deals «Бисертская» с listings «Уральских Рабочих» если совпадали (rooms, area, date). Генерил 50k spurious cross-street pairs. TVF street_sales_vs_listings(...) корректен (filter both sides по street_pattern). View никем не используется — endpoint /sales-vs-listings вызывает TVF напрямую. Applied on prod manually before commit (DROP VIEW idempotent). --- .../068_drop_v_street_sales_vs_listings.sql | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 tradein-mvp/backend/data/sql/068_drop_v_street_sales_vs_listings.sql diff --git a/tradein-mvp/backend/data/sql/068_drop_v_street_sales_vs_listings.sql b/tradein-mvp/backend/data/sql/068_drop_v_street_sales_vs_listings.sql new file mode 100644 index 00000000..781a52c3 --- /dev/null +++ b/tradein-mvp/backend/data/sql/068_drop_v_street_sales_vs_listings.sql @@ -0,0 +1,18 @@ +-- 068_drop_v_street_sales_vs_listings.sql +-- Hotfix к PR K (067): view v_street_sales_vs_listings имел JOIN без street +-- match — связывал deals «Бисертская» с listings «Уральских Рабочих» если +-- совпадали rooms + area + date. Генерил 50k spurious pairs. +-- +-- TVF street_sales_vs_listings(...) в 067 корректен (filter both sides +-- по street_pattern). View по факту никем не используется (endpoint +-- /api/v1/sales-vs-listings вызывает TVF напрямую). +-- +-- Решение: drop view. Если когда-то понадобится analytical view, надо +-- добавлять JOIN condition через address LIKE pattern или house_id match +-- (через listing_sources). Отдельный PR. + +BEGIN; + +DROP VIEW IF EXISTS v_street_sales_vs_listings; + +COMMIT;