Shuffle/supabase/perf/catalog_search_perf_unload.sql
cschlaefke 81be119f4e test(catalog): Latenzmessung der Katalogsuche (Projekt perf, vorlaeufig) und Doku
Playwright-Projekt perf (nur mit PERF_WEB_URL, nur lesend, nie in der CI):
CDP-Drosselung 100 ms / 10 Mbit/s, mind. 100 Suchen, Messung im Browser vom
letzten Tastendruck bis zur ersten Kachel. Ladeskript fuer synthetisches
Volumen unter supabase/perf/. Messung und Aussagegrenzen in der Umsetzungsdoku.

Refs #3

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-04 19:50:03 +01:00

38 lines
1.4 KiB
PL/PgSQL

-- Entfernt das synthetische Volumen aus catalog_search_perf_load.sql (alle Zeilen mit ID-Praefix 9e4f0000-).
-- Alternative Titel, Verlags-, Genre- und Mechanik-Zuordnungen verschwinden per on delete cascade mit den Spielen.
-- Aufruf (gleiche Schutzstufen wie das Ladeskript):
-- docker exec -i supabase_db_shuffle psql -U postgres -d postgres -X -v confirm_local=yes \
-- < supabase/perf/catalog_search_perf_unload.sql
\set ON_ERROR_STOP on
\if :{?confirm_local}
\else
\set confirm_local no
\endif
select :'confirm_local' = 'yes' as confirm_ok, coalesce(:'HOST', '') like '/%' as socket_ok \gset
\if :confirm_ok
\else
\echo 'Abbruch: mit -v confirm_local=yes aufrufen.'
\quit
\endif
\if :socket_ok
\else
\echo 'Abbruch: nur per Unix-Socket im lokalen Container.'
\quit
\endif
begin;
delete from public.games where id::text like '9e4f0000-%';
delete from public.publishers where id::text like '9e4f0000-%';
commit;
vacuum (analyze) public.games;
vacuum (analyze) public.game_alt_titles;
vacuum (analyze) public.publishers;
vacuum (analyze) public.game_publishers;
vacuum (analyze) public.game_genres;
vacuum (analyze) public.game_mechanics;
\echo === entfernt ===
select (select count(*) from public.games where id::text like '9e4f0000-%') as spiele_uebrig,
(select count(*) from public.publishers where id::text like '9e4f0000-%') as verlage_uebrig,
(select count(*) from public.catalog_games) as katalogspiele;