-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsimple-remove-triggers.sql
More file actions
49 lines (40 loc) · 1.98 KB
/
Copy pathsimple-remove-triggers.sql
File metadata and controls
49 lines (40 loc) · 1.98 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
-- Simple approach to remove problematic triggers and functions
-- This avoids complex queries that might cause errors
-- Drop specific functions that we know might cause issues
DROP FUNCTION IF EXISTS public.create_audit_log() CASCADE;
DROP FUNCTION IF EXISTS public.handle_new_user() CASCADE;
DROP FUNCTION IF EXISTS public.create_default_organization() CASCADE;
DROP FUNCTION IF EXISTS public.handle_user_created() CASCADE;
DROP FUNCTION IF EXISTS public.handle_organization_created() CASCADE;
DROP FUNCTION IF EXISTS public.log_audit_event() CASCADE;
-- Drop all triggers on organizations table
DROP TRIGGER IF EXISTS audit_organizations ON public.organizations;
DROP TRIGGER IF EXISTS create_audit_log_trigger ON public.organizations;
DROP TRIGGER IF EXISTS organization_audit ON public.organizations;
DROP TRIGGER IF EXISTS log_changes ON public.organizations;
-- Drop all triggers on users table
DROP TRIGGER IF EXISTS audit_users ON public.users;
DROP TRIGGER IF EXISTS create_audit_log_trigger ON public.users;
DROP TRIGGER IF EXISTS user_audit ON public.users;
-- Drop all triggers on memberships table
DROP TRIGGER IF EXISTS audit_memberships ON public.memberships;
DROP TRIGGER IF EXISTS create_audit_log_trigger ON public.memberships;
DROP TRIGGER IF EXISTS membership_audit ON public.memberships;
-- Test organization creation
DO $$
DECLARE
test_org_id UUID;
BEGIN
BEGIN
INSERT INTO public.organizations (name, slug)
VALUES ('Simple Trigger Remove Test', 'simple-trigger-remove-' || extract(epoch from now()))
RETURNING id INTO test_org_id;
RAISE NOTICE 'SUCCESS: Organization creation works! Org ID: %', test_org_id;
-- Clean up
DELETE FROM public.organizations WHERE id = test_org_id;
RAISE NOTICE 'SUCCESS: Test organization cleaned up';
EXCEPTION WHEN OTHERS THEN
RAISE NOTICE 'ERROR: Organization creation still failing: %', SQLERRM;
END;
END $$;
SELECT 'SIMPLE TRIGGER REMOVAL COMPLETE' as status;