maya
.public
Tables
(current)
Columns
Constraints
Relationships
Orphan Tables
Anomalies
Routines
ot_rw_drop_event_partition(integer, integer)
Parameters
Name
Type
Mode
in_year
integer
IN
in_week_number
integer
IN
Definition
DECLARE table_name varchar; target_date date; BEGIN target_date:= (SELECT to_date(in_year::varchar,'YYYY') + ((in_week_number::int * 7)::varchar ||' days')::interval); IF now() - target_date < '91 days'::interval THEN RAISE NOTICE 'You''re not allowed to drop an event partition younger than 3 months'; RETURN false; END IF; table_name := 'event_p'|| in_year::varchar ||'w' ||lpad(in_week_number::varchar,2,'0'); EXECUTE 'DROP TABLE public.'|| table_name; RETURN true; EXCEPTION WHEN OTHERS THEN RAISE NOTICE '%:%',SQLSTATE,SQLERRM; RETURN false; END;