Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit97c31cd

Browse files
committed
introduce drop_range_triggers() function
1 parent421b2ed commit97c31cd

File tree

3 files changed

+23
-46
lines changed

3 files changed

+23
-46
lines changed

‎hash.sql

Lines changed: 1 addition & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ BEGIN
8383
v_relname := @extschema@.validate_relname(relation);
8484

8585
/* Drop trigger first*/
86-
PERFORM @extschema@.drop_hash_triggers(relation);
86+
PERFORM @extschema@.drop_triggers(relation);
8787
DELETEFROM @extschema@.pathman_configWHERE relname::regclass= relation;
8888

8989
FOR v_recin (SELECT inhrelid::regclass::textAS tbl
@@ -108,27 +108,6 @@ BEGIN
108108
END
109109
$$ LANGUAGE plpgsql;
110110

111-
/*
112-
* Drops hash trigger
113-
*/
114-
CREATEOR REPLACE FUNCTION @extschema@.drop_hash_triggers(IN relation REGCLASS)
115-
RETURNS VOIDAS
116-
$$
117-
DECLARE
118-
relnameTEXT;
119-
schemaTEXT;
120-
funcnameTEXT;
121-
BEGIN
122-
SELECT* INTO schema, relname
123-
FROM @extschema@.get_plain_schema_and_relname(relation);
124-
125-
funcname := schema||'.'|| quote_ident(format('%s_insert_trigger_func', relname));
126-
EXECUTE format('DROP FUNCTION IF EXISTS %s() CASCADE', funcname);
127-
funcname := schema||'.'|| quote_ident(format('%s_update_trigger_func', relname));
128-
EXECUTE format('DROP FUNCTION IF EXISTS %s() CASCADE', funcname);
129-
END
130-
$$ LANGUAGE plpgsql;
131-
132111
/*
133112
* Creates an update trigger
134113
*/

‎init.sql

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -127,9 +127,9 @@ BEGIN
127127

128128
DELETEFROM @extschema@.pathman_configWHERE relname= relation;
129129
IF parttype=1 THEN
130-
PERFORM @extschema@.drop_hash_triggers(relation);
130+
PERFORM @extschema@.drop_triggers(relation);
131131
ELSIF parttype=2 THEN
132-
PERFORM @extschema@.drop_range_triggers(relation);
132+
PERFORM @extschema@.drop_triggers(relation);
133133
END IF;
134134

135135
/* Notify backend about changes*/
@@ -340,3 +340,22 @@ RETURNS VOID AS 'pg_pathman', 'acquire_partitions_lock' LANGUAGE C STRICT;
340340
*/
341341
CREATEOR REPLACE FUNCTION @extschema@.release_partitions_lock()
342342
RETURNS VOIDAS'pg_pathman','release_partitions_lock' LANGUAGE C STRICT;
343+
344+
/*
345+
* Drop trigger
346+
*/
347+
CREATEOR REPLACE FUNCTION @extschema@.drop_triggers(IN relation REGCLASS)
348+
RETURNS VOIDAS
349+
$$
350+
DECLARE
351+
relnameTEXT;
352+
schemaTEXT;
353+
funcnameTEXT;
354+
BEGIN
355+
SELECT* INTO schema, relname
356+
FROM @extschema@.get_plain_schema_and_relname(relation);
357+
358+
funcname := schema||'.'|| quote_ident(format('%s_update_trigger_func', relname));
359+
EXECUTE format('DROP FUNCTION IF EXISTS %s() CASCADE', funcname);
360+
END
361+
$$ LANGUAGE plpgsql;

‎range.sql

Lines changed: 1 addition & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1094,7 +1094,7 @@ BEGIN
10941094
v_relname := @extschema@.validate_relname(relation);
10951095

10961096
/* Drop trigger first*/
1097-
PERFORM @extschema@.drop_range_triggers(relation);
1097+
PERFORM @extschema@.drop_triggers(relation);
10981098

10991099
FOR v_recIN (SELECT inhrelid::regclass::textAS tbl
11001100
FROM pg_inheritsWHERE inhparent::regclass= relation)
@@ -1120,27 +1120,6 @@ BEGIN
11201120
END
11211121
$$ LANGUAGE plpgsql;
11221122

1123-
1124-
/*
1125-
* Drop trigger
1126-
*/
1127-
CREATEOR REPLACE FUNCTION @extschema@.drop_range_triggers(IN relation REGCLASS)
1128-
RETURNS VOIDAS
1129-
$$
1130-
DECLARE
1131-
schemaTEXT;
1132-
relnameTEXT;
1133-
BEGIN
1134-
SELECT* INTO schema, relname
1135-
FROM @extschema@.get_plain_schema_and_relname(relation);
1136-
1137-
--EXECUTE format('DROP TRIGGER IF EXISTS %s ON %s CASCADE'
1138-
-- , format('"%s_%s_insert_trigger"', schema, relname)
1139-
-- , relation::TEXT);
1140-
END
1141-
$$ LANGUAGE plpgsql;
1142-
1143-
11441123
/*
11451124
* Internal function used to create new partitions on insert or update trigger.
11461125
* Invoked from C-function find_or_create_range_partition().

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp