Shuffle/supabase/perf/catalog_search_perf_unload.sql
cschlaefke cd96d91eae
All checks were successful
CI / flutter (pull_request) Successful in 1m29s
CI / web-build (pull_request) Successful in 1m1s
CI / supabase (pull_request) Successful in 8s
CI / supabase-tests (pull_request) Successful in 33s
CI / e2e (pull_request) Successful in 3m33s
test(catalog): Datensaetze trennen, Assertions und Latenzmessung schaerfen
Jede Suche enthaelt das Kunstwort des eigenen Datensets (Kollision web/api
behoben); Kachelzaehlung ohne first(), konkrete Trefferzahlen; screenText
wartet auf die Live-Region statt sie zu entfernen; Latenzmessung ueberspringt
bereits sichtbare Treffer, Filtersuchen ergaenzt; Ladeskripte mit Exit-Code
und TCP-Schutz; Doku aktualisiert.

Refs #3

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-04 21:32:29 +01:00

38 lines
1.6 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.'
do $abort$ begin raise exception 'Abbruch (siehe Meldung davor)'; end $abort$;
\endif
\if :socket_ok
\else
\echo 'Abbruch: nur per Unix-Socket im lokalen Container.'
do $abort$ begin raise exception 'Abbruch (siehe Meldung davor)'; end $abort$;
\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;