mirror of
https://github.com/LemmyNet/lemmy.git
synced 2024-11-25 22:01:19 +00:00
Remove truncate trigger because truncate is already restricted by foreign keys
This commit is contained in:
parent
c29d9f7bad
commit
6093f341d6
1 changed files with 0 additions and 12 deletions
|
@ -65,21 +65,9 @@ BEGIN
|
||||||
EXECUTE format('CREATE TRIGGER %2$s_insert AFTER INSERT ON %1$s REFERENCING NEW TABLE AS new_table FOR EACH STATEMENT EXECUTE FUNCTION r.%2$s ();', table_name, function_name);
|
EXECUTE format('CREATE TRIGGER %2$s_insert AFTER INSERT ON %1$s REFERENCING NEW TABLE AS new_table FOR EACH STATEMENT EXECUTE FUNCTION r.%2$s ();', table_name, function_name);
|
||||||
EXECUTE format('CREATE TRIGGER %2$s_delete AFTER DELETE ON %1$s REFERENCING OLD TABLE AS old_table FOR EACH STATEMENT EXECUTE FUNCTION r.%2$s ();', table_name, function_name);
|
EXECUTE format('CREATE TRIGGER %2$s_delete AFTER DELETE ON %1$s REFERENCING OLD TABLE AS old_table FOR EACH STATEMENT EXECUTE FUNCTION r.%2$s ();', table_name, function_name);
|
||||||
EXECUTE format('CREATE TRIGGER %2$s_update AFTER UPDATE ON %1$s REFERENCING OLD TABLE AS old_table NEW TABLE AS new_table FOR EACH STATEMENT EXECUTE FUNCTION r.%2$s ();', table_name, function_name);
|
EXECUTE format('CREATE TRIGGER %2$s_update AFTER UPDATE ON %1$s REFERENCING OLD TABLE AS old_table NEW TABLE AS new_table FOR EACH STATEMENT EXECUTE FUNCTION r.%2$s ();', table_name, function_name);
|
||||||
-- Prevent admin from running `TRUNCATE` because it doesn't allow reading old rows which is needed by triggers
|
|
||||||
EXECUTE format('CREATE OR REPLACE TRIGGER no_truncate BEFORE TRUNCATE ON %s FOR EACH STATEMENT EXECUTE FUNCTION r.no_truncate ();', table_name);
|
|
||||||
END
|
END
|
||||||
$$;
|
$$;
|
||||||
|
|
||||||
CREATE FUNCTION r.no_truncate ()
|
|
||||||
RETURNS TRIGGER
|
|
||||||
LANGUAGE plpgsql
|
|
||||||
AS $$
|
|
||||||
BEGIN
|
|
||||||
RAISE EXCEPTION 'Run DELETE instead';
|
|
||||||
RETURN NULL;
|
|
||||||
END
|
|
||||||
$$;
|
|
||||||
|
|
||||||
-- Define functions
|
-- Define functions
|
||||||
CREATE FUNCTION r.creator_id_from_post_aggregates (agg post_aggregates)
|
CREATE FUNCTION r.creator_id_from_post_aggregates (agg post_aggregates)
|
||||||
RETURNS int RETURN agg.creator_id;
|
RETURNS int RETURN agg.creator_id;
|
||||||
|
|
Loading…
Reference in a new issue