Skip to content

Commit 40b89c0

Browse files
committed
Merge master into picky_nodes
2 parents 2b16fcd + 7a9ce75 commit 40b89c0

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

range.sql

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -693,14 +693,14 @@ DECLARE
693693
v_part_name TEXT;
694694
v_interval TEXT;
695695
BEGIN
696+
/* Prevent concurrent partition creation */
697+
PERFORM @extschema@.acquire_partitions_lock();
698+
696699
SELECT attname, range_interval INTO v_attname, v_interval
697700
FROM @extschema@.pathman_config WHERE relname::regclass = p_relation;
698701

699702
v_atttype := @extschema@.get_attribute_type_name(p_relation, v_attname);
700703

701-
/* Prevent concurrent partition creation */
702-
PERFORM @extschema@.acquire_partitions_lock();
703-
704704
EXECUTE format('SELECT @extschema@.append_partition_internal($1, $2, $3, ARRAY[]::%s[])', v_atttype)
705705
INTO v_part_name
706706
USING p_relation, v_atttype, v_interval;
@@ -715,8 +715,8 @@ BEGIN
715715
RETURN v_part_name;
716716

717717
EXCEPTION WHEN others THEN
718-
PERFORM @extschema@.release_partitions_lock();
719718
RAISE EXCEPTION '% %', SQLERRM, SQLSTATE;
719+
PERFORM @extschema@.release_partitions_lock();
720720
END
721721
$$
722722
LANGUAGE plpgsql;
@@ -762,13 +762,13 @@ DECLARE
762762
v_part_name TEXT;
763763
v_interval TEXT;
764764
BEGIN
765+
/* Prevent concurrent partition creation */
766+
PERFORM @extschema@.acquire_partitions_lock();
767+
765768
SELECT attname, range_interval INTO v_attname, v_interval
766769
FROM @extschema@.pathman_config WHERE relname::regclass = p_relation;
767770
v_atttype := @extschema@.get_attribute_type_name(p_relation, v_attname);
768771

769-
/* Prevent concurrent partition creation */
770-
PERFORM @extschema@.acquire_partitions_lock();
771-
772772
EXECUTE format('SELECT @extschema@.prepend_partition_internal($1, $2, $3, ARRAY[]::%s[])', v_atttype)
773773
INTO v_part_name
774774
USING p_relation, v_atttype, v_interval;
@@ -783,8 +783,8 @@ BEGIN
783783
RETURN v_part_name;
784784

785785
EXCEPTION WHEN others THEN
786-
PERFORM @extschema@.release_partitions_lock();
787786
RAISE EXCEPTION '% %', SQLERRM, SQLSTATE;
787+
PERFORM @extschema@.release_partitions_lock();
788788
END
789789
$$
790790
LANGUAGE plpgsql;

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy