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)