Add tests for user data cleanup with shared document ownership and for TTS segment variant export scenarios, including cases with duplicate audio keys and storage disabled. Refactor cleanup logic to use document row types and transactional ownership removal with last-owner checks. Update TTS segment cache clearing to report deleted segment count by unique entry. Adjust export logic to always include all TTS segment variants and conditionally export file buckets based on storage availability. Update migration to use NOT VALID/VALIDATE for new cascading constraints.
10 lines
910 B
SQL
10 lines
910 B
SQL
ALTER TABLE "user_job_events" ADD CONSTRAINT "user_job_events_user_id_user_id_fk" FOREIGN KEY ("user_id") REFERENCES "public"."user"("id") ON DELETE cascade ON UPDATE no action NOT VALID;--> statement-breakpoint
|
|
ALTER TABLE "user_tts_chars" ADD CONSTRAINT "user_tts_chars_user_id_user_id_fk" FOREIGN KEY ("user_id") REFERENCES "public"."user"("id") ON DELETE cascade ON UPDATE no action NOT VALID;--> statement-breakpoint
|
|
DELETE FROM "user_job_events" WHERE NOT EXISTS (
|
|
SELECT 1 FROM "user" WHERE "user"."id" = "user_job_events"."user_id"
|
|
);--> statement-breakpoint
|
|
DELETE FROM "user_tts_chars" WHERE NOT EXISTS (
|
|
SELECT 1 FROM "user" WHERE "user"."id" = "user_tts_chars"."user_id"
|
|
);--> statement-breakpoint
|
|
ALTER TABLE "user_job_events" VALIDATE CONSTRAINT "user_job_events_user_id_user_id_fk";--> statement-breakpoint
|
|
ALTER TABLE "user_tts_chars" VALIDATE CONSTRAINT "user_tts_chars_user_id_user_id_fk";
|